21

Windowsを以前の状態に復元することで解決

メッセージ(システムは指定されたパスを見つけることができません。)は...を示しています。

1)新しいCMDを開いたとき(Win + R => cmd)。紹介から始まります。(3行目)

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.
The system cannot find the path specified.

C:\Users\ViliamKopecky>

cmd /C dir2) (または何か)のようなコマンドを実行したときcmd /C php -v(2行目)

C:\Users\ViliamKopecky>cmd /C dir
The system cannot find the path specified.
 Volume in drive C is Windows7_OS
 Volume Serial Number is 8230-1246
...

C:\Windows\System32>cmd /C php -v
The system cannot find the path specified.
PHP 5.4.8 (cli) (built: Oct 16 2012 22:30:23)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies

3)(最も厄介な)execPHPまたはNode.js、あるいはおそらく任意のスクリプト言語から関数を実行するとき。(おそらく内部から実行されますcmd /C <command>

メッセージが表示されません...

1)cmd(またはmingw、...)からコマンドを実行したとき

C:\Users\ViliamKopecky>dir
 Volume in drive C is Windows7_OS
 Volume Serial Number is 8230-1246

 Directory of C:\Users\ViliamKopecky

cmdからの簡単なコマンドから始めましょう。

php -r "exec('dir', $stdout, $stderr); print(implode(\"\n\", $stdout), $stderr);"

結果は次のようになります(ディレクトリテストは空です-これは正しいです)

E:\test>php -r "exec('dir', $stdout, $stderr); print(implode(\"\n\", $stdout), $stderr);"
The system cannot find the path specified.
 Volume in drive E is www
 Volume Serial Number is 0C99-95EC

 Directory of E:\test

09.11.2012  22:42    <DIR>          .
09.11.2012  22:42    <DIR>          ..
               0 File(s)              0 bytes
               2 Dir(s)  13 495 296 000 bytes free
int(1)

これは、コマンドdirがphpから正しく実行されたことを示しています。間違っているのは2行目だけです-システムは指定されたパスを見つけることができません。-それはそこにあるべきではありません。

このメッセージは、 PHPから(およびNode.jsからrequire('child_process').exec("dir", function(err, stdout, stderr) {console.log(stderr)});)execによって出力されます。

cmd(またはmingwなど)から直接コマンドを実行すると、メッセージなしで正しく実行されます。環境変数PATHは問題ないようです。問題は、スクリプト環境からexec関数を介して実行することです。

その迷惑なメッセージを取り除く方法は?ありがとう

4

4 に答える 4

52

問題は、cmd.exeを実行すると、一部のプログラムが自動実行に設定されていることです。私の場合、インストールされたのはANSICONでした...その後、適切にアンインストールせずにファイルを移動しました。

私はこのブログ投稿で解決策を見つけました:

http://carol-nichols.com/2011/03/17/the-system-cannot-find-the-path-specificed/

短いバージョンは見つけることです

HKCU \ Software \ Microsoft \ Command Processor \ AutoRun

値をクリアします。

于 2012-11-12T12:00:20.190 に答える
0

これは実際には、コードではなく、PHPでの起動エラーのように見えます。しますか

php -r "echo 1;"

また、同じエラーをスローしますか?その場合、php.iniファイルまたはインクルードのパスが正しくない可能性があります。

php -i

あなたにもっと情報を与えるべきです。

于 2012-11-09T22:48:38.030 に答える
0

このメッセージは、PATH環境変数のパスが存在しないことを意味している可能性があります。

次のPowerShellコマンドは、欠落しているパスを出力します。

($env:path).Trim(";").Split(";") | ? {-not (test-path $_)}

例えば

> ($env:path).Trim(";").Split(";") | ? {-not (test-path $_)}
C:\Program Files\CMake\bin
C:\Program Files\SDCC\bin
C:\Users\wjbr\AppData\Local\Programs\Microsoft VS Code\bin

参考文献

于 2020-12-30T10:53:30.120 に答える
-3

これを試してみるべきだと思います!私は同じ問題を抱えていて、このように解決しました:

ok type:cd \ windows \ system32その後、次のように表示されます。System32 /:必要なものを入力します(例:ipconfig):System32:ipconfigこれで、これで完了です。:)

于 2013-12-30T05:38:49.117 に答える