本帖最后由 xxoojoeooxx 于 2011-3-29 22:47 编辑
回覆 10# iori2882
au3能删除是因为 那个档案没有因读取而锁定
exe要确保程序已经结束 才能被删除
以下在任何時間都可執行
也就是說可以插在任何地方
方案一
执行删除直到成功
Run(@ComSpec & ' /c for /l %a in (0,0,1) do (del /f /q "'&@ScriptFullPath&'"&if not exist "'&@ScriptFullPath&'" (exit))', @ScriptDir, @SW_HIDE)
方案二
执行删除直到成功附加延迟
Run(@ComSpec & ' /c for /l %a in (0,0,1) do (del /f /q "'&@ScriptFullPath&'"&if not exist "'&@ScriptFullPath&'" (exit) else (ping -n 2 127.0.0.1>nul))', @ScriptDir, @SW_HIDE)
方案三
强制关闭程序并删除
Run(@ComSpec & ' /c taskkill /f /PID '& @AutoItPID &'&del /f /q "'&@ScriptFullPath&'"', @ScriptDir, @SW_HIDE)
|