Batch Datei nach ersten Ausführen automatisch löschen

Dieses Thema im Forum "Webmaster Hilfe / Programmierer Forum" wurde erstellt von Matze992, 27.04.2009.

  1. #1 Matze992, 27.04.2009
    Matze992

    Matze992 Neuer Benutzer

    Dabei seit:
    27.04.2009
    Beiträge:
    8
    Zustimmungen:
    0
    Hallo,

    habe an euch mal eine Frage die mich brennend interessiert!

    Ich habe eine batch Datei erstellt und diese in eine EXE umgewandelt. Mit dieser kann ich nun den Computer, nach einer Bestätigung mit J, herrunterfahren.

    Hier der Quelltext:

    Code:
    @echo off 
    :Start 
    set /p choice=Computer herunterfahren? j/n 
    if %choice%==j %SystemRoot%\system32\shutdown.exe -s -f -t 00 
    if %choice%==n goto to Exit 
    goto Start 
    :Exit 
    Nun meine Frage: Ist es möglich die EXE Datei automatisch zu löschen wenn ich den PC runterfahre, also J bestätige?

    Ich habe so daran gedacht das die EXE Datei eine extra .bat Datei erstellt, welche dann auch ausgeführt wird und die EXE Datei löscht... Nur leider hab ich davon nicht allzu viel Plan wie das genau funktioniert.

    Hoffe ihr könnt mir weiterhelfen

    MfG
    Matthias
     
  2. AdMan

    schau mal hier: Windows-Wartungs-Tool. Viele Probleme lassen sich damit einfach beheben. Oftmals ist der PC dann auch schneller!
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
  3. heinzl

    heinzl .

    Dabei seit:
    29.01.2008
    Beiträge:
    8.266
    Zustimmungen:
    9
    [quote='Matze992',index.php?page=Thread&postID=732970#post732970]Ich habe so daran gedacht das die EXE Datei eine extra .bat Datei erstellt, welche dann auch ausgeführt wird und die EXE Datei löscht...[/quote]
    Der Sinn erschließt sich mir jetzt nicht wirklich :D
    Starte die Exe im Temp-Ordner und laß den beim Neustart leeren.
     
  4. #3 Matze992, 27.04.2009
    Matze992

    Matze992 Neuer Benutzer

    Dabei seit:
    27.04.2009
    Beiträge:
    8
    Zustimmungen:
    0
    @heinzl

    Danke für deine Antwort

    Ich hab es aber tortzdem mal so probiert:

    Code:
    @echo off 
    :Start 
    set /p choice=Computer herunterfahren? j/n 
    if %choice%==j %SystemRoot%\system32\shutdown.exe -s -f -t 05 
    del "Dateiname.bat" 
    if %choice%==n goto to Exit 
    goto Start 
    :Exit 
    Funktioniert nun mit der Batch Datei problemlos!

    Nur wenn ich die Batch Datei zu einer EXE umwandel funktionierts nicht mehr...
    Die einzige Änderung welche ich vorgenommen habe ist statt .bat hinter dem Dateinamen .exe zu setzten!
    Also so:

    Code:
    @echo off 
    :Start 
    set /p choice=Computer herunterfahren? j/n 
    if %choice%==j %SystemRoot%\system32\shutdown.exe -s -f -t 05 
    del "Dateiname.exe" 
    if %choice%==n goto to Exit 
    goto Start 
    :Exit


    Woran könnte das liegen?
    Kann sich eine EXE-Datei überhaupt selbst löschen?
     
  5. heinzl

    heinzl .

    Dabei seit:
    29.01.2008
    Beiträge:
    8.266
    Zustimmungen:
    9
    Eine ausführbare Datei kann sich nicht selbst löschen. Die Batchdatei läßt sich nur deshalb löschen, weil sie nur Kommandos enthält, aber nichts ausführt. Das macht nämlich der Kommandointerpreter.
     
  6. #5 Matze992, 28.04.2009
    Matze992

    Matze992 Neuer Benutzer

    Dabei seit:
    27.04.2009
    Beiträge:
    8
    Zustimmungen:
    0
    Alles klar.

    Um noch einmal auf die Idee mit dem erstellen einer Batch-Datei zum löschen der EXE zurückzukommen.

    Habe den Quellcode nun so geändert:

    Code:
    @echo off 
    :Start 
    set /p choice=Computer herunterfahren? j/n 
    if %choice%==j %SystemRoot%\system32\shutdown.exe -s -f -t 05 
    echo.del "Dateiname.exe" del "loesch.bat" >> loesch.bat 
    move loesch.bat "%userprofile%\startm~1\programme\autostart\" 
    if %choice%==n goto to Exit 
    goto Start 
    :Exit
    Nur leider wird die loesch.bat Datei nicht in den Autostart ordner verschoben...

    Liegt das an einem Fehler, oder funktioniert das so nicht?
     
  7. Nico

    Nico Ehemaliges Teammitglied

    Dabei seit:
    28.10.2005
    Beiträge:
    6.675
    Zustimmungen:
    0
    Geht nicht mehr so einfach, weil sich viele Viren so zugriff verschafft haben^^

    warum das löschen der exe nicht geht:

    Die BAT Datei wird von cmd.exe ausgeführt, da kanns tdu sie löschen - die exe wird selber ausgeführt und kann sich während sie läuft net selbst löschen.

    Gruß
     
  8. #7 Matze992, 28.04.2009
    Matze992

    Matze992 Neuer Benutzer

    Dabei seit:
    27.04.2009
    Beiträge:
    8
    Zustimmungen:
    0
    Okay, das habe ich jetzt schon verstanden das die EXE sich nicht selbst löschen kann, wenn sie ausgeführt wird...

    Nur warum funktioniert das nicht:

    Code:
    move loesch.bat "%userprofile%\startm~1\programme\autostart\" 
    Wenn ich die Datei in "Eigene Datein" verschieb funktioniert es problemlos.

    Ist der Ordner "Autostart" gesichert, wegen den Viren wo du erwähnt hast?

    Und gibt es noch eine andere möglichkeit die loesch.bat Datei auszuführen?
     
  9. Nico

    Nico Ehemaliges Teammitglied

    Dabei seit:
    28.10.2005
    Beiträge:
    6.675
    Zustimmungen:
    0
    Sonst könnten sich BAT viren ganz einfach da reinschieben, geht nicht mehr.

    Probiers eventuell mal mit der Windows registry (runonce),

    Code:
    move loesch.bat "%userprofile%\"
    reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Windows\CurrentVersion\RunOnce" /v "Meine BAT datei" /d "%userprofile%\loesch.bat"
    
    Gruß
     
  10. AdMan

    Es ist generell erstmal empfehlenswert alle ggf. veralteten oder fehlerhaften Treiber zu scannen und auf neue zu aktualisieren. Hier kannst du einen Treiber-Scanner downloaden. Das erspart oftmals viel Ärger und hilft gegen diverse Probleme.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
  11. #9 Matze992, 29.04.2009
    Matze992

    Matze992 Neuer Benutzer

    Dabei seit:
    27.04.2009
    Beiträge:
    8
    Zustimmungen:
    0
    Funktioniert irgendwie auch nicht so recht:

    Code:
    @echo off 
    :Start 
    set /p choice=Computer herunterfahren? j/n 
    if %choice%==j %SystemRoot%\system32\shutdown.exe -s -f -t 10 
    echo.del "%userprofile%\Dateiname.exe" del "loesch.bat" >> loesch.bat 
    move loesch.bat "%userprofile%\" 
    reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Windows\CurrentVersion\RunOnce" /v "loesch.bat" /d "%userprofile%\loesch.bat" 
    Echo Startup=%Startup% 
    if %choice%==n goto to Exit 
    goto Start 
    :Exit
    Stimmt das so?

    Anonsten hab ich keinen Plan was man noch machen könnte...
     
  12. Sviper

    Sviper Guest

    Es funktioniert auch in der ersten Variante - vorausgesetzt ich führe die Batch-Datei unter einem Administratorkonto und nicht unter einem eingeschränkten Konto aus. Aber du machst ein paar kleine Fehler. Mach mal das @echo off weg, dann siehst du auch die Fehlermeldungen. z.B. tust du in deinem letzen Code in Zeile 7 eine nicht mehr existierende Datei angeben (du hast sie eine Zeile vorher verschoben...). Dann gibt's noch ein paar Fehlerchen: Z.B. willst du wirklich, dass jedes Mal die Datei in den Autostart verschoben wird, auch wenn sie schon da ist? Dafür gibt's IF EXISTS-Abfragen. Okay, viel Spaß noch beim Programmieren, denke jetzt kommst du erstmal weiter.
     
Thema: Batch Datei nach ersten Ausführen automatisch löschen
Besucher kamen mit folgenden Suchen
  1. batch datei selbst löschen

    ,
  2. batch datei nach ausführung löschen

    ,
  3. batch selbst löschen

    ,
  4. batch nach ausführung löschen,
  5. batch automatisch löschen,
  6. batch sich selbst löschen,
  7. batch datei die sich selbst löscht,
  8. bat datei selber löschen,
  9. batch datei sich selbst löschen,
  10. batch datei löscht sich selbst,
  11. batch soll sich selbst löschen,
  12. cmd sich selbst löschen,
  13. batch sich selber löschen,
  14. bat datei automatisch löschen,
  15. selbstlöschende batch,
  16. cmd datei die sich selbst löscht,
  17. batch datei löschen,
  18. eine sich nach dem ausführen selbstlöschende bat,
  19. bat die sich löscht,
  20. batch datei ausführen und löschen,
  21. bat datei nach ausführung löschen,
  22. bat nach ausführung löschen,
  23. batch die sich selbst löscht,
  24. batch ausführen und löschen,
  25. batch nach dem ausführen löschen
Die Seite wird geladen...

Batch Datei nach ersten Ausführen automatisch löschen - Ähnliche Themen

  1. Windows 7 verschiebt keine Dateien mit chinesischen Schriftzeichen zwischen Laufwerken

    Windows 7 verschiebt keine Dateien mit chinesischen Schriftzeichen zwischen Laufwerken: Hallo, ich habe ein paar Dateien, die im Titel chinesische Schriftzeichen haben, und ich wollte sie auf einen NAS-Ordner schieben. Ich bekomme...
  2. Excel und Word öffnet sich beim Hochfahren immer automatisch

    Excel und Word öffnet sich beim Hochfahren immer automatisch: Hallo, ich bekomme noch eine Krise. Irgendwann habe ich mal eingestellt, dass sich Excel und Word beim Hochfahren des Computers selbständig öffnen...
  3. da-Vinci-Code-Datei????

    da-Vinci-Code-Datei????: Ich weiß nicht ob ich hier richtig bin, sonst bitte verschieben. Seit dem 11.11. stehen komplett alle unsere Fotos auf oben genannter...
  4. Pc fährt immer erst beim zweiten Versuch hoch?

    Pc fährt immer erst beim zweiten Versuch hoch?: Heyho, seit ca. einer Woche fährt mein Pc beim ersten "Versuch" einfach nichtmehr hoch sondern erst beim zweiten. Ich starte meinen Pc wie...
  5. PC startet nicht automatisch nach dem Strom angeschaltet wird

    PC startet nicht automatisch nach dem Strom angeschaltet wird: Hallo zusammen. Ich habe eine schaltbare Steckdose. Nach dem ich meinen PC herunterfahre, schaltet sich nach 2 Minuten automatisch die Stromzufuhr...