Auf die Idee mit der Verknüpfung von CreateProcess und dem Löschen der Datei wäre ich jetzt echt nicht gekommen. Danke für die Idee, werde eventuell in Kürze mal einen POC schreiben oder so. Arbeite mich atm wieder in die WinAPI Programmierung ein.
Auf die Idee mit der Verknüpfung von CreateProcess und dem Löschen der Datei wäre ich jetzt echt nicht gekommen. Danke für die Idee, werde eventuell in Kürze mal einen POC schreiben oder so. Arbeite mich atm wieder in die WinAPI Programmierung ein.
Danke erstmal an alle
@BlackHook danke für den C&P hab ihn verstanden
Schleife ist vlt nicht ganz sinnvoll, weil sich der Prozess aufhängt, wenn er die Datei nicht löschen kann. Bin gewohnt "del" und nicht "erase" zu benutzen, ist aber glaub das selbe.
@BlackBerry ok, hab ich auch verstanden daher thx. Quasi per runPE eine Anwendung starten, welche die eigentliche Datei löscht. Da diese Methode jedoch um einiges aufwendiger ist, denk ich dass ich mich erstmal mit der relativ simplen batch datei methode zufrieden geben werde.
EDIT: hab verstanden warum ne Schleife sinn macht^^ alternative wäre die ping variante von Jut4h.tm
@Mofo
Batch dateien können sich selber löschen, weshalb es keine Leiche geben würde
mfG c00p3r
nach 30 sekunden googlen gefunden
Quelle: dotnet-snippets.deCode:Private Sub MyApplication_Shutdown(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Shutdown Using srmStreamWriter As New IO.StreamWriter(System.Windows.Forms.Application.StartupPath & "\unistall.bat") With srmStreamWriter Dim files As ReadOnlyCollection(Of String) files = My.Computer.FileSystem.GetFiles(My.Application.Info.DirectoryPath, FileIO.SearchOption.SearchAllSubDirectories, "*.*") For Each f As Object In files .WriteLine("@ECHO Datei """ & f.ToString & """ wird entfernt...") .WriteLine("@CD /D %~d0%~p0") .WriteLine("@ERASE /Q /F """ & f.ToString & """") .WriteLine("@ECHO Vorgang abgeschlossen.") Next End With End Using Process.Start(System.Windows.Forms.Application.StartupPath & "\unistall.bat") End Sub
Edit: musst ein .WriteLine("@echo off") unter for each ... setzen
MfG ~TheDarky
Geändert von TheDarky (02.12.2010 um 18:06 Uhr)