hlzxcjx 发表于 2009-4-2 13:58:43

如何解决数组错误导致程序崩溃的问题?

如果运行的某个程序不存在,程序立即崩溃!此时只要加上“遇错终止”即可避免。如:

AutoItSetOption ( "RunErrorsFatal",0 );遇错终止
run("123.exe")

如果数组错误,也会导致程序崩溃,如:

$s=StringSplit("123-456","-")
MsgBox(0,0,$s)
MsgBox(0,0,$s)



此时加上 AutoItSetOption ( "RunErrorsFatal",0 ) 也不管用了!有什么解决的办法吗?

[ 本帖最后由 hlzxcjx 于 2009-4-11 15:31 编辑 ]

sensel 发表于 2009-4-2 18:59:29

应该加强程序健壮性而不是让程序莫名其妙退出。如果你不确定数组范围,使用前先 UBound 探测一下。

sxd 发表于 2009-4-2 21:11:40

原帖由 sensel 于 2009-4-2 18:59 发表 http://www.autoitx.com/images/common/back.gif
应该加强程序健壮性而不是让程序莫名其妙退出。如果你不确定数组范围,使用前先 UBound 探测一下。
顶你 绝对的

漠北雪~狼 发表于 2009-4-3 12:33:58

操作得多了,代码够稳定、清晰的话,数组出错的机率还是会非常小的。

maxkingmax 发表于 2009-4-21 10:49:57

数组最好用循环的方式读取!

zjx0111 发表于 2009-6-2 20:39:03

$s=StringSplit("123-456","-")
MsgBox(0,0,$s)
MsgBox(0,0,$s)

你这个数组里面只有$s,$s,$s,没有$s
页: [1]
查看完整版本: 如何解决数组错误导致程序崩溃的问题?