找回密码
 加入
搜索
查看: 8556|回复: 16

求教:重启程序的实现方法

  [复制链接]
发表于 2009-8-7 07:05:01 | 显示全部楼层 |阅读模式
本帖最后由 feicuiboy 于 2009-8-27 19:09 编辑

求教:
如何关闭程序自身并重新启动该程序,在AU3中有几种方法?
比如说程序名为tt.exe

我想到的是DOS里面的taskill命令
发表于 2009-8-7 09:26:16 | 显示全部楼层
关闭了自身又怎么控制自身的启动?我也想知道i
发表于 2009-8-7 11:04:36 | 显示全部楼层
以前我也遇到过这样的问题.
我的思路是:在A程序退出前,启用B程序,而B程序用来检测A程序是否退出.
如果确定A程序退出,则由B程序重新开启A程序.
当然这个时候A程序上应该叫重启,和退出应该区别开,要不然老是循环.

个人愚见,未经测试,不知行不行.
发表于 2009-8-7 14:05:52 | 显示全部楼层
我写过类似的程序,程序运行时必须有两个程序,一个主程序另一个监视程序,你关闭的是主程序,使用监视程序来监视主程序是否关闭,如果关闭就运行主程序。
有些U盘病毒程序无法关闭就是通过这个方法实现的。
发表于 2009-8-7 19:49:42 | 显示全部楼层
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 305, 145, -1,-1)
$Button1 = GUICtrlCreateButton("退出", 64, 40, 105, 49, 0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit
        Case $Button1
                        $Msg = MsgBox (48+4,"","是否重启程序?")
                        IF $Msg = 6 Then 
                                Run(@ComSpec&" /c ping 127.1 -n 3&start "&FileGetShortName (@ScriptFullPath),"",@SW_HIDE)
                                exit
            EndIf
        EndSwitch
WEnd

评分

参与人数 1金钱 +15 贡献 +10 收起 理由
afan + 15 + 10

查看全部评分

发表于 2009-8-7 20:32:01 | 显示全部楼层
楼上的方法不错,学习!
发表于 2009-8-7 21:15:17 | 显示全部楼层
值得借鉴,非常好的思路
发表于 2009-8-7 21:23:45 | 显示全部楼层
Exit(ShellExecute(@ScriptFullPath))

评分

参与人数 1金钱 +15 贡献 +10 收起 理由
afan + 15 + 10

查看全部评分

发表于 2009-8-7 21:46:31 | 显示全部楼层
8楼这个更简洁,学习!不过没有延时。
发表于 2009-8-7 21:59:32 | 显示全部楼层
好东西 慢慢消化
 楼主| 发表于 2009-8-7 23:10:43 | 显示全部楼层
VERY   good

(@ScriptFullPath)) 我知道是运行目录下程序的意思,
能不能解释下exit的用法
发表于 2012-2-10 23:31:53 | 显示全部楼层
正需要。学习了。
发表于 2013-1-30 17:03:48 | 显示全部楼层
感觉是好东西,不过还没实践过!
发表于 2013-4-7 17:33:12 | 显示全部楼层
回复 8# pusofalse


    灰常给力.....哈哈
发表于 2014-9-23 18:37:08 | 显示全部楼层
正在研究。。。。。。。。。。。。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-28 18:24 , Processed in 0.080334 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表