Ich habe einen Zeichenfolgenwert in CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce festgelegt, dessen Ziel es ist, beim Neustart einen Ordner zu löschen. Sein Wert ist:
rd /s /q "ThisPath"
Auf diese Weise wird nichts gelöscht. Wenn ich stattdessen Folgendes verwende:
cmd.exe /c rd /s /q "ThisPath"
Es funktioniert, nachdem für den Bruchteil einer Sekunde ein schwarzes Kästchen angezeigt wird. Gibt es eine Möglichkeit, den ersten Befehl zu senden, ohne das schwarze Kästchen anzuzeigen?
Antwort1
Der rd
Befehl, den Sie ausführen möchten, CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
ist keine ausführbare Datei, sondern ein interner Befehl. Daher cmd.exe
schlägt der Versuch, ihn allein auszuführen, fehl.
Der rd
Befehl funktioniert nur innerhalb einer cmd.exe
Instanz.
Die „schwarze Box“, die Sie beim Start blinkend sehen cmd.exe
, fährt hoch, führt den rd
Befehl aus und schließt sich wieder.
Wenn Sie den rd
Befehl in eine Batchdatei einfügen, können Sie diese minimiert wie folgt starten:
cmd.exe /c start /min c:\path\to\RemoveDir.bat
Dadurch wird es weniger sichtbar.