Aufgrund einiger Tools, und Posts habe ich gemerkt, dass dieses Func nicht ganz unerwünscht ist.
Es ist eine Modifikation einer 2007 geposteten Funktion
Man kann damit nicht nur das eigene Script killen sondern eine Reihe von Files
_SelfDelete($_SelfDeletefiles,$iDelay = 3)
$_SelfDeletefiles kann entweder eine einzelne Datei oder ein Array an Files sein oder eine Auflistung von Files (Trennzeichen = ; )
#include-once
#region #### Includes ============================================================================================================
#include<Array.au3>
#endregion ======================================================================================================================
; #INDEX# =======================================================================================================================
; Title .........: Script kann sich selbst löschen
; Author(s) .....: Höllinger Marc-André
; ===============================================================================================================================
#cs
#CURRENT# =====================================================================================================================
_SelfDelete
===============================================================================================================================
#ce
Func _SelfDelete($_SelfDeletefiles,$iDelay = 3)
Local $i
Local $_filelist
Local $_SelfDeletefilename = @TempDir & "\scratch.bat"
if IsArray($_SelfDeletefiles) then
$_filelist = $_SelfDeletefiles
Else
$_filelist = StringSplit($_SelfDeletefiles,';')
_ArrayDelete($_filelist,0)
EndIf
_ArrayDisplay($_filelist)
FileDelete($_SelfDeletefilename)
FileWrite($_SelfDeletefilename,'ping -n ' & $iDelay & ' 127.0.0.1 ' & @CRLF)
for $i = 0 to (UBound($_filelist)-1)
FileWrite($_SelfDeletefilename,':loop'&$i & @CRLF)
If StringInStr(FileGetAttrib($_filelist[$i]),'D') >0 Then
FileWrite($_SelfDeletefilename,'rd "' & $_filelist[$i] & '" /s/q ' & @CRLF )
Else
FileWrite($_SelfDeletefilename,'del "' & $_filelist[$i] & @CRLF )
EndIf
FileWrite($_SelfDeletefilename,'if exist "' & $_filelist[$i] & '" goto loop'&$i & @CRLF )
Next
FileWrite($_SelfDeletefilename,'del ' & $_SelfDeletefilename)
Run($_SelfDeletefilename, '', @SW_HIDE)
EndFunc
[/autoit]