求解:子脚本使用了非数组变量
本帖最后由 xhz520 于 2012-5-5 16:44 编辑以下这断代码,如果不加上2句sleep(100)的话就会出现 子脚本使用了非数组变量 错误。到底那里错了哦??求指点~~! $aWindowsX = _WinAPI_EnumChildWindows($form)
For $i = 1 To $aWindowsX
If $aWindowsX[$i] = "MacromediaFlashPlayerActiveX" Then
$login_chack = 1
$hwnd_game = $aWindowsX[$i]
$login_chack = $aWindowsX[$i]
Return $login_chack
EndIf
Sleep(100)
Next
$aWindows = _WinAPI_EnumChildWindows($form)
For $i = 1 To $aWindows
If $aWindows[$i] = "Internet Explorer_Server" Then
$login_chack = 0
$hwnd_ye = $aWindows[$i]
$login_chack = $aWindows[$i]
Return $login_chack
EndIf
Sleep(100)
Next 回复 1# xhz520
如果是我, 会这么编写这个自定义函数, 将两个循环整合成一个:
$aWindowsX = _WinAPI_EnumChildWindows($form)
If Not IsArray($aWindowsX) Then Return SetError(1)
For $i = 1 To $aWindowsX
If $aWindowsX[$i] = "MacromediaFlashPlayerActiveX" Then
$login_chack = 1
$hwnd_game = $aWindowsX[$i]
$login_chack = $aWindowsX[$i]
Return $login_chack
ElseIf $aWindowX[$i] = "Internet Explorer_Server" Then
$login_chack = 0
$hwnd_ye = $aWindowsX[$i]
$login_chack = $aWindowsX[$i]
EndIf
Next
Return $login_chack 代码不完整,楼主还是精简出关键的错误代码再来发帖吧,另外再编辑器里运行有显示哪一行错了楼主连为何没发出来?
经鉴定,问题表述不清楚,退回修改。 回复 2# user3000
恩恩。谢谢指教~~!已经修改了~! 回复 3# tryhi
编辑器里运行一直没问题的。是编译后的程序,加了运行参数引起的问题~!提示在15572行错误,我都不知道在那~!我代码都没这么长 - -! 问题找到了~~!估计是开始枚举子窗口太快了吧。"Internet Explorer_Server"这个类是打开浏览器后要晚1秒左右才会出现~~! 回复 2# user3000
两个条件里除了第一行一样,后面两行是一样的,你不觉得这么写很累吗 回复xhz520
如果是我, 会这么编写这个自定义函数, 将两个循环整合成一个:
user3000 发表于 2012-5-5 17:12 http://www.autoitx.com/images/common/back.gif
$aWindowsX = _WinAPI_EnumChildWindows($form)
If Not IsArray($aWindowsX) Then Return SetError(1)
For $i = 1 To $aWindowsX
If $aWindowsX[$i] = "MacromediaFlashPlayerActiveX" Then
$login_chack = 1
ElseIf $aWindowX[$i] = "Internet Explorer_Server" Then
$login_chack = 0
EndIf
$login_chack = $aWindowsX[$i]
Next
Return $login_chack
页:
[1]