请教:AU3程序怎么实现产生错误后自动重启电脑?
小弟我做了一个程序,放在虚拟机中运行,有时会因为虚拟机发生问题而导致AU3程序出错,
我的想法是:如果AU3程序出错,则自动重启虚拟机。
请各位老师给小弟指点指点。 虚拟机如果出错是什么样的,是否会自动停止程序了。? 回复 2# chenronting
虚拟机有时会自动断网(断网的话就必须要重启虚拟机才可以会正常联网),
然后我的AU3程序就出错了,我的想法是:如果AU3程序出错,则自动重启虚拟机。 是不是你的虚拟机问题啊,这个跟程序不搭噶吧 我知道虚拟机有问题,但是我又不得不用虚拟机,并且我也没办法调好虚拟机,所以从AU3程序着手,一旦AU3程序出错,则自动重启虚拟机 回复 5# kood481748
一旦au3有出错窗口出现,它就不会再运行代码了,你想在这个au3内部实现是不可能的
再搞个au3,监护若有au3出错窗口出现,就重启
不知道你用的啥虚拟机,要它能支持在虚拟机内部让它重启才行 回复 6# happytc
有人提议使用猛牛的脚本,
http://www.autoitx.com/forum.php?mod=viewthread&tid=19784&highlight
不过我看不太懂,楼上的老师认为可行吗? 既然是 由于断网造成的,可以在程序中导致错误的代码的前面设置,检测当前网络是否畅通,如果不畅通就重启电脑,设置软件自启动,这样不就行了么?... 回复 8# bdancerlc
这样也是不行的,因为我的程序在运行过程中本身就会禁用网卡和启用网卡,
所以会有正常的断网情况,而非正常断网就是在启用网卡以后仍然上不了网,
所以我的想法是:如果AU3程序出错,则自动重启虚拟机。 你可以在断开网卡然后启用网卡之后开启另一个 独立的脚本进行监控网络,如果断开启动网路至网络恢复这个过程需要2秒的时间,可以设置5秒进行一次检测,做一个12次的循环,这样就是一分钟,检测到网络自动退出,等待下一次断网重启网络之后再打开,你的网络总不会在一分钟之类还连接不上吧...
(如果程序错误的没有弹窗提示的话,可以用监控进程,进程不存在就重启,这样效率应该比较高..)
重点是在程序错误之前开启这个 子脚本...
希望能帮到你.. 程序出错代码就不会继续运行了所以用什么办法都没用
我的解决办法就是再做一个监控程序 检测AU3有没有出错 或者退出进程亦或者检测网络时候连接等 如果不符合条件就重启 感谢楼上两位老师的提点,如果可以使用下贴中的代码进行修改
http://www.autoitx.com/forum.php?mod=viewthread&tid=19784&highlight
实现如果AU3程序出错,则自动重启虚拟机当然最好,
如果不行就另做一个监视程序,检测AU3有没有出错,这样会容易实现一点,
当然也会占用太多的虚拟机内存…… 回复 12# kood481748
监控的程序不用一直开着,在出错前用run()打开,检测做出判断之后推出,下次主程序循环到这个地方的时候再次打开,这样不会占用很多内存的... 回复 12# kood481748
猛牛那个,不就是再启一个进程监视嘛,就是我上面说的呀
页:
[1]