relheob 0 Posted April 13, 2005 Hi, I have a compiled script and want to delete this exe file itself after it has finsihed successfully. How can I do this w/o rebooting or logging off? Regards Relheob Share this post Link to post Share on other sites
buzz44 1 Posted April 13, 2005 Func _SelfDelete() Local $cmdfile FileDelete(@TempDir & "\scratch.cmd") $cmdfile = ':loop' & @CRLF _ & 'del "' & @ScriptFullPath & '"' & @CRLF _ & 'if exist "' & @ScriptFullPath & '" goto loop' & @CRLF _ & 'del ' & @TempDir & '\scratch.cmd' FileWrite(@TempDir & "\scratch.cmd", $cmdfile) Run(@TempDir & "\scratch.cmd", @TempDir, @SW_HIDE) EndFunc qq Share this post Link to post Share on other sites
Ghastly_MIB 0 Posted April 13, 2005 Or just simple: Win9x, ME and NT: Run("command.exe del """ & @ScriptFullPath & """", "", "@SW_HIDE") Win2k and newer: Run("command.exe /c del """ & @ScriptFullPath & """", "", "@SW_HIDE") Share this post Link to post Share on other sites
Jos 2,172 Posted April 13, 2005 Or just simple:Win9x, ME and NT:Run("command.exe del """ & @ScriptFullPath & """", "", "@SW_HIDE")Win2k and newer:Run("command.exe /c del """ & @ScriptFullPath & """", "", "@SW_HIDE")<{POST_SNAPBACK}>nah.. won't work because the script cannot delete itself when its still running.... SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past. Share this post Link to post Share on other sites
relheob 0 Posted April 14, 2005 Func _SelfDelete() Local $cmdfile FileDelete(@TempDir & "\scratch.cmd") $cmdfile = ':loop' & @CRLF _ & 'del "' & @ScriptFullPath & '"' & @CRLF _ & 'if exist "' & @ScriptFullPath & '" goto loop' & @CRLF _ & 'del ' & @TempDir & '\scratch.cmd' FileWrite(@TempDir & "\scratch.cmd", $cmdfile) Run(@TempDir & "\scratch.cmd", @TempDir, @SW_HIDE) EndFunc<{POST_SNAPBACK}>Many thanks. Share this post Link to post Share on other sites