cmd.exeを使用して%userdomain%および%username%パラメータからUserdomainとUsernameを取得しようとしています。データを取り戻すことができます。Inno Setup - バッチファイルを起動せずにcmd.exeでコマンドを実行する
手動でコマンドウィンドウを起動して次のように入力するとうまくいきます。 echo%userdomain%\%username%> "C:\ Users \ MyUserName \ AppData \ Local \ Temp \ is-B7P3P.tmp \ domainstring_results.txt 「
.BATをバッチファイルに入れて起動
場合、それはあまりにもうまく動作します。しかし、私はExecの機能と同じことを行うならば、それだけでCMD.EXEを起動し、他に何もしない:
CommandLine := 'echo %userdomain%\%username% > "' + ExpandConstant('{tmp}') + '\domainstring_results.txt"';
Exec('cmd.exe', CommandLine, '', SW_HIDE, ewWaitUntilTerminated, ResultCode);
私はバッチファイルを使用したくないインストーラの一時的なフォルダであるため、インストーラのコンパイルの前にバッチを作成することはできません。私はインストールステップの前に、この情報を必要とするので は、単にあなたがあなたの目的のために必要なデータを使用できるようにする必要がありExpandConstant('{%WindowsContantNameHere}')
を呼び出してデータを取得することができます...あまりにも[ファイル名を指定して実行]セクションで
私はあまりよく分かっていませんが、コマンドの前に "/ C"が必要ないのですか? –