Ich führe gerne die Eingabeaufforderung oder eine Batchdatei auf einem USB-Stick aus, z. B. ein bootfähiges Betriebssystem.
Ich hatte eine Datei file.bat
, die enthält:
net user %username% reset password
ich möchte es ausführen, ohne in das Windows-Betriebssystem zu gelangen. Das heißt, meiner Vermutung nach ist das nur möglich, bevor das Betriebssystem gebootet wird. Also hoffe ich, dass es, wie bei der Windows-Installations-ISO, auch mit cmd.iso möglich ist.
Wenn ja, helft mir bitte, Leute. Ich hoffe, ihr habt meine Frage verstanden.
Hinweis: Wenn ich zu diesem Thema googele, kann ich nur einen bootfähigen USB-Stick per cmd finden. Aber bitte beachten Sie, dass ich nicht wissen muss, wie man einen USB-Stick per cmd bootet. Ich brauche cmd in einem bootfähigen USB-Stick.
Ich möchte es file.bat
als Betriebssystem ausführen.
Antwort1
Anscheinend möchten Sie vor dem Anmeldebildschirm von Windows Zugriff auf eine Eingabeaufforderung haben. Außerdem möchten Sie damit anscheinend ein Batch-Skript ausführen, um die Anmeldeinformationen eines Profils zurückzusetzen. Selbst wenn ich mich bei Letzterem irre, werden Sie mit Ersterem zufrieden sein.
Erstens und vor allem ist es nicht möglich, ein Batch-Skript außerhalb von Windows bzw. außerhalb von CMD auszuführen. Das Beste, was Sie tun können, ist, es vor der Anmeldung beim Systemstart auszuführen.
Lassen Sie uns für unsere Zwecke zwei Batch-Skripte erstellen (da Sie bei Batch-Skripten heute konsistent zu sein scheinen, können Sie diese auch einzeln zeilenweise ausführen, wenn Sie möchten). Wenn Sie Zugriff auf ein Windows-Administratorkonto haben, sollten Sie part1a.bat erstellen; wenn nicht, müssen Sie part1b.bat erstellen. In beiden Fällen erstellen Sie part2.bat.
part1a.bat - Verwenden Sie dies, wenn Sie sich bei einem Administratorprofil anmelden können
reg add HKLM\SYSTEM\Setup /v SetupType /t REG_DWORD /d 2 /f
reg add HKLM\SYSTEM\Setup /v CmdLine /t REG_SZ /d "cmd.exe" /f
exit
part1b.bat - Verwenden Sie dies, wenn Sie nicht
REM Replace drive F: with whatever drive the main OS is on
reg load HKLM\TempHive213 F:\Windows\System32\config\SYSTEM
reg add HKLM\TempHive213\Setup /v SetupType /t REG_DWORD /d 2 /f
reg add HKLM\TempHive213\Setup /v CmdLine /t REG_SZ /d "cmd.exe" /f
exit
part2.bat – (ändern Sie es nach Ihren Wünschen, aber behalten Sie die oberen beiden Zeilen)
reg add HKLM\SYSTEM\Setup /v SetupType /t REG_DWORD /d 0 /f
reg add HKLM\SYSTEM\Setup /v CmdLine /t REG_SZ /d "" /f
REM Replace the user info below to what you want.
net user %username% %newpassword%
exit
Wenn Sie Zugriff auf ein aktives Windows-Administratorkonto haben, führen Sie es
part1a.bat
mit Administratorrechten aus und fahren Sie mit Schritt 4 fort. Wenn nicht, fahren Sie mit Schritt 2 fort.Starten Sie die Windows-Installations-ISO. Wählen Sie „PC reparieren“ oder „Computer reparieren“. Klicken Sie auf „Eingabeaufforderung“. Jetzt müssen Sie die Treiberbuchstaben kennen, damit Sie dies tun können
diskpart
. Führen Sie ausdiskpart
und führen Sie auslist vol
. Jedem Laufwerk sollte ein Treiberbuchstabe zugewiesen worden sein; wenn nicht, können Sie dies selbst tun, indem Sie diese beiden nacheinander ausführen:select vol <num>
undassign letter=<letter>
.Wenn Sie dem Batch-Skript den Laufwerksbuchstaben neu zuweisen müssen, führen Sie es aus
notepad D:\part1b.bat
(ersetzen Sie den Buchstaben bzw. dessen Speicherort), ändern Sie es und speichern Sie es. Führen Sie es dann ausD:\part1b.bat
.Starten Sie den Computer neu. Nach dem Neustart, während oder nach dem Windows-Startlogo und bevor Sie zum Windows-Anmeldebildschirm gelangen, wird eine CMD-Eingabeaufforderung mit Administratorrechten angezeigt. Verwenden Sie
diskpart
erneut, um zu unterscheiden, welches Laufwerk welches ist, und führen Sie dann ausD:\part2.bat
. Wenn Sie dies noch nicht getan haben, ersetzen Sie bitte die Zeile, die das Ersetzen der Benutzeranmeldeinformationen beschreibt, durch die gewünschten, indem Sie ausführennotepad D:\part2.bat
. Wenn Sie das von mir angegebene Original part2.bat verwendet haben, würde ein Kennwort festgelegt.
Hinweis: diskpart
Es wird Ihnen möglicherweise nicht genau gesagt, welches welches ist. Möglicherweise müssen Sie die Kombination aus cd /d F:
(Buchstaben ersetzen) und ausprobieren dir
, um herauszufinden, welches Laufwerk welches ist.
Antwort2
Sie können eine Batchdatei nicht wie ein Betriebssystem ausführen, so funktioniert das einfach nicht. Der Batchinterpreter ist ein Teil von Windows und wenn Sie Ihren Computer von einem USB-Stick booten, befinden Sie sich nicht mehr in Windows und können Ihre Batchdatei daher nicht ausführen.
Damit ein Bootloader Ihre Software tatsächlich laden (d. h. booten) kann, müssen Sie einen Bootsektor für den Bootloader schreiben.
Sie könnten dann einen Batch-Interpreter hinzufügen, aber das ist wahrscheinlich nicht das, was Sie möchten.