9

Windows 7 を使用していますが、コンソール (cmd.exe) からこのファイルを実行するときに問題が発生します。

W:\software\projects\myproject\build\msvc\build.bat

ファイルを含むフォルダーに手動で移動し、次のコマンド シーケンスを使用してそこから実行すると、機能します。

W:\>cd software
W:\software>cd projects
W:\software\projects>cd myproject
W:\software\projects\myproject>cd build
W:\software\projects\myproject\build>cd msvc
W:\software\projects\myproject\build\msvc>build.bat

ただし、次のいずれかの方法でルート ディレクトリからファイルを実行しようとすると、次のようになります。

W:\>software\projects\myproject\build\msvc\build.bat
W:\>call software\projects\myproject\build\msvc\build.bat
W:\>@call software\projects\myproject\build\msvc\build.bat
W:\>"software\projects\myproject\build\msvc\build.bat"
W:\>call "software\projects\myproject\build\msvc\build.bat"
W:\>@call "software\projects\myproject\build\msvc\build.bat"

次のエラー メッセージが表示されます。

The system cannot find the path specified.

私が Windows XP を使用していたときは、ファイルを実行するためにファイルを含むフォルダーに移動する必要はなかったと確信しています (もちろん、私は間違っている可能性があります)。 7. それとも、何か足りないのですか?

4

1 に答える 1

3

あなたは正しいです。実行する前に、バッチ スクリプト フォルダーに移動する必要はありません。「指定されたパスが見つかりません」というエラー。バッチファイル内の何かが原因である可能性が最も高いです。

追加してみる

cd W:\software\projects\myproject\build\msvc
w:

または単一のコマンドで(James Kが提案したように、ありがとう!)

cd /d W:\software\projects\myproject\build\msvc

もう少し検索して、この一般的な解決策を見つけました:

cd /d %~dp0

バッチ ファイルの先頭で、作業ディレクトリをスクリプトのディレクトリに設定して、これが原因かどうかを確認します。

W:\ からファイルを実行すると、コマンドが実行される場所 (作業ディレクトリ) になります。スクリプトがこの場所で使用するファイルを見つけられない可能性が最も高いです。

于 2012-09-06T06:52:47.903 に答える