最終的に呼び出すVS2005で既存のCプログラムを修正しようとしています
int system(command) //in C:\Program Files\Microsoft Visual Studio 8\VC\crt\src\system.c)
パラメータ値付き
start C:\Program Files\VideoLAN\VLC\vlc.exe C:\Documents and Settings\me\My Documents\My Music\09 - Track09.mp3
開始するプログラムとファイル名のパスは両方とも、取得した環境変数から形成され、コマンド start が char バッファーの先頭に追加されます。環境変数は次のとおりです。
%VLCPATH%
価値のあるものC:\Program Files\VideoLAN\VLC
%MUSIC%
価値のあるものC:\Documents and Settings\me\My Documents\My Music
XPコマンドプロンプトでこれを試してみましたが、パスにスペースが含まれていない場合はすべて正常に機能します。これも機能します:
"%VLCPATH%\vlc.exe" "%MUSIC%\09 - Track09.mp3"
それで、私は何をすべきですか?
- 環境変数を編集して引用符を付けますか? (そうは思わないでください)
- コマンドにパラメーターとしてファイルがあるかどうかを確認し、エスケープ文字を含む引用符をおそらく両方に追加して、開始という単語を削除しますか?
- 私が気づいていない賢明な/エレガントなことをする