0

userpath変数を使用してbatファイルを実行する必要があります

system("\"%HOMEPATH%\\AppData\\Roaming\\project\\Local Store\\update.bat\"");

これは機能しませんが、次のものは機能します:

system("\"C:\\Users\\User\\AppData\\Roaming\\project\\Local Store\\update.bat\"");

しかし、すべてのユーザーに機能させるには、最初のものが必要です... よろしくお願いします!

4

1 に答える 1

0

(回答を編集)

%HOMEPATH%1 つ以上のスペースを含むディレクトリ名に展開されると思います。これは、引用符を追加すると、なぜそれがうまくいったのかを説明します.

元々、呼び出す前に自分で変数を展開する必要があると思っていsystem()ましたが、それは間違いでした。このsystem()コマンドは、コマンド ラインで入力したかのように文字列を処理することになっています。これには、変数の展開が含まれます。

于 2013-09-27T20:05:58.800 に答える