按键精灵脚本制作教程问题

32【高级】按键精灵脚本界面QUI_按键精灵视频_爱拍原创& & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & & &来源:按键学院&&&【按键精灵】
还记不记得,那些天,急着交脚本的时候出bug了。通宵了三天三夜,调试出错。逻辑检查了一边又一边,万行代码反反复复翻来覆去推敲了无数遍。结果……
不要告诉我是中英文符号写错了,变量定义出错了,我保证不打死我自己……
1:定义变量时直接赋值
报错提示:没有找到合法的符号
//(错误代码0)没有找到合法的符号
正确代码:定义变量时不能直接赋值哦~
2:循环语句未设置循环次数
报错提示:没有找到合法的符号
//第0行:无法计算取值。错误附加码=775:0
For&'(错误码0)没有找到合法的符号。
MessageBox&a
正确代码:循环语句,需要在for循环后面,加上循环次数哦~不然电脑那么笨……
&&&&&&&&MessageBox&a
3:语句书写不全
报错提示:无法计算取值。错误附加码=775:0
//语句书写不全
For&i&=&0&To&10&step
正确代码:循环语句,在步径step后,需要指定具体的数值:如step&2&,每次循环结束的时候变量+2;step&1,每次循环结束变量+1。
For&i&=&0&To&10&step&1&&&&&&&&
4:未设置循环条件
报错提示:无法计算取值。错误附加码=775:0
//语法错误:脚本&11-12&,第21行,第7个字符:(错误码0)没有找到合法的符号。
//语义错误:脚本&11-12&,第0行:无法计算取值。错误附加码=775:0
正确代码:亲,没有定义变量,也没有设置while的循环条件哦(while后面加一个参数:循环条件)
While&a&=&1
5:变量名与子程序、子函数重名
报错提示:名称有重复。错误附加码=3102:0
//语义错误:脚本&11-12&,第60行:名称有重复。错误附加码=3102:0
Sub&找字()
正确代码:定义的变量名称,不能与已有的子程序或者子函数重名哦~不然按键无法判断你想调用的是谁~
6:取数组元素下标超出范围
报错提示:下标越界:&'[number:&11]'
//脚本&**.Q&,第**行:下标越界:&'[number:&11]',&
MessageBox&a(11)
正确代码:在按键精灵中,定义数组时dim&a(9),意味着数组a的最大下限是a(9)。而在调用的时候,记得千万不能超过定义的数组下限哦?~~
7:错误类型作大小比较
报错提示:类型不匹配:&'A'&
//脚本&11-12.Q&,第37行:类型不匹配:&'A',&
If&a&&&1&Then&
&&&&&&&&MessageBox&&a大于1&
正确代码:“If&a&&&1”,左边是字符串,右边是数值,无法进行比较~若需要将其作比较可先将字符串转换成ANSI代码后比较
//得到&a&的ANSI字符代码后作大小比较
If&Asc(a)&&&1&Then&
&&&&&&&&MessageBox&&a大于1&
8:使用数组未先定义
报错提示:类型不匹配:&
//脚本&11-12.Q&,第52行:类型不匹配:&'MYARRAY',&
//脚本&11-12.Q&,第53行:类型不匹配:&'A',&
W1&=&Clng(MyArray(0))
w1=clng(a(1))
正确代码:又是一个调用变量的时候,没有好好定义的忧桑错误:
Dim&MyArray(5)
W1&=&Clng(MyArray(0))
w1=clng(a(1))
9:延时命令不合理
Delay&6000
//上面语句可用下面的限定次数循环语句取代,可解决按停止键停不下来的情况。
&&&&&&&&Delay&100
报错提示:根本停不下来啊啊啊……
10:子程序使用错误
报错提示:无法计算取值。
//脚本&常见脚本错误&,第66行:无法计算取值。错误附加码=775:120
TracePrint&prints(&ss&)
Sub&prints(str1)
&&&&&&&&prints&=&str1
正确代码:sub子程序无返回值,若想输出返回值使用Function函数哦~
TracePrint&prints(&ss&)
Function&prints(str1)
&&&&&&&&prints&=&str1
End&Function
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:6055次
排名:千里之外
原创:21篇您的举报已经提交成功,我们将尽快处理,谢谢!
得一分去领奖
大家还关注&&&&按键精灵脚本源代码
按键精灵脚本源代码
按键精灵脚本源代码,可以根据自己需要设置按键,设置技能冷却时间。文件是按键精灵软件导出的,使用进行导入就OK。
若举报审核通过,可奖励20下载分
被举报人:
lufeng589674
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动***等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
VIP下载&&免积分60元/年(1200次)
您可能还需要
开发技术下载排行你的位置:
异常执行崩溃的错误汇总
11:28:16 |
来源: 按键精灵资源站
本帖最后由 兄弟工程师07 于
15:43 编辑
showtopic.aspx?topicid=404147&forumpage=1&page=1@点击返回总目录
代码出错的时候要学会自我排查错误原因,不止可以尽快找到错误的地方,从而认识到错误的原因,并在今后编写脚本中也可以提早避免再犯。
出错时:建议您对脚本进行完善的调试测试,在所有关键咨询步骤加入日志功能,测试时记录下脚本的运行位置,在异常崩溃的时候记录下当时执行到的位置,多次后即可确认异常部位的代码,然后进行排查错误原因。
崩溃的原因大致有以下几种可能,您也可以往这方面排查下。
1、代码结构混乱,Goto跳转随意从一个Sub或Function跳出或跳转到另一个Sub或Function里,有几率造成内存积压导致崩溃。(根据情况一般影响较小,运行三五天可能都没事,就影响些脚本运行速度;此外Goto跳转简单方便快捷也会导致您不考虑整体代码的结构问题,你们没觉得一个写完的脚本如果要大改,稍不留神可能导致整个脚本瘫痪吗?为什么不试着想想模块化处理?更新就换个零件而已。百度百科:)
2、互相调用Sub或Function,具体例子看:
3、多线程开启过多(三四十以上或更多,系统不足),执行的命令存在互相冲突的等情况。
4、目前测试确认环境变量与全局变量(DimEnv、Global)存在一个BUG,每当对环境变量进行赋值并修改其变量值时,会占用一点内存,由于自动释放较为缓慢,如果频繁赋值修改将会造成内存积压,最终内存溢出崩溃。(期间也会渐渐影响脚本运行效率)
暂时解决方式:把全部环境变量传值方式取消,使用File把相关值写到本地ini文件中进行读取写入。
5、此外多个子线程启动的时候,最好在执行 BeginThread(子线程)后加个延时1~3秒,然后再继续执行后面代码,以免过快启动线程导致异常崩溃。
6、是否有调用第三方插件,部分有应用到内存方面调用,如大漠的后台绑定等功能,如命令用法不规范正确,胡乱重复绑定或模式不对,或者插件只适合在WIN7系统下运行的,确放在XP系统中运行。(这种情况较多)。
7、Call Plugin.Msg.Tips(&我是气泡···气泡!哦也&) 该命令执行时也会造成内存积压,最终崩溃,大约时间在1~3天左右。(看执行频率)
推荐:脚本主线循环结构框架演示
showtopic.aspx?topicid=380830&forumpage=1&page=1@showtopic.aspx?topicid=380830&forumpage=1&page=1
后续会继续补充……

参考资料

 

随机推荐