2013-03-26 14:04:23 +0000 2013-03-26 14:04:23 +0000
10
10
Advertisement

Windows Kommandozeile: 'nicht als interner oder externer Befehl, lauffähiges Programm oder Batch-Datei erkannt.'

Advertisement

Wenn ich cmd in Windows 7 ausführe (durch Eingabe von 'cmd' in Windows Ausführen), wird folgender Fehler angezeigt:

‘-p’ wird nicht als interner oder externer Befehl, lauffähiges Programm oder Batch-Datei erkannt.

Ich habe versucht, PATH in den Umgebungsvariablen zu überprüfen. Wenn ich echo %PATH% ausführe, erhalte ich das Folgende:

C:\Windows\System32;C:\Windows;C:\Windows\System32\WindowsPowerShell\v1.0;C:\xampp\php;

Ich habe alle Verzeichnisse überprüft, auf die PATH verweist. Alles scheint an seinem Platz zu sein. Was ich nicht verstehen kann, ist, wo '-p' aufgerufen wird. Ich denke, dass es etwas mit cmd zu tun hat, da es nur herauskommt, wenn ich cmd aufrufe und nicht, wenn ich z. B. ipconfig oder ping ausführe.

Advertisement

Antworten (1)

12
12
12
2013-03-26 14:13:28 +0000

Es ist möglich, dass Sie einen “AutoRun”-Befehl in der Registrierung festgelegt haben. Es gibt zwei Registrierungsschlüssel, einen pro Benutzer und einen pro Computer, die Befehle definieren können, die jedes Mal ausgeführt werden, wenn der Befehlsprozessor (cmd.exe) gestartet wird. Sie sind eigentlich in cmd /? aufgelistet.

Wie auch immer, versuchen Sie cmd /d auszuführen und sehen Sie, ob das die gleiche Meldung erzeugt. Das Flag /d bedeutet “keine AutoRun-Befehle ausführen”, was es perfekt für diesen Test macht.

Die Registry-Werte sind:

HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun

Überprüfen Sie beide. Standardmäßig sollten beide nicht vorhanden sein. Vielleicht möchten Sie die Befehlszeichenfolgen in Ihren korrigieren oder sogar ganz löschen.

Verwandt: http://blogs.msdn.com/b/oldnewthing/archive/2007/11/21/6447771.aspx


Alternativ könnten Sie ein Batch-Skript oder ähnliches mit dem Namen cmd eingerichtet haben, das anstelle des nativen cmd ausgeführt wird. Versuchen Sie den Befehl where cmd, um eine Liste der cmds in Ihrem Pfad in der Reihenfolge der Ausführung auszudrucken. Wenn es andere als/vor dem in C:\Windows\System32\cmd.exe gibt, sollten Sie sie löschen oder ihren Pfad aus Ihrer Umgebungsvariablen PATH entfernen.

Advertisement
Advertisement