次の場合、 $TEMP param の値が異なることに気付きました。
- 手動で(ダブルクリックして)installer.exe を実行します。
- 管理者権限を持つアプリケーションから実行します。
手動で実行すると、$TEMP = C:/Users/username/AppData/Local/Tempになります
管理者権限でアプリから実行 = C:/Windows/Temp
調子:
プロセスを完了するためにシステムの再起動が必要なインストーラーがあります。
これを実現するために、$TEMP にインストーラーのコピーを作成し、パスをRunOnceに入れます。
問題:
機能は正常に動作します (再起動後、プログラムは新しいバージョンに更新されます)。
ただし、インストール プロセスの最後に、 RunOnceでインストーラーを実行すると $TEMP = C:/Users/username/AppData/Local/Tempになるため、インストーラーのコピーを削除できません。
実際、インストーラーのコピーはC:/Windows/Tempにあります。
質問:
$TEMP を常に = C:/Windows/Tempにすることは可能ですか?
システムの再起動を伴うインストールの場合の回避策として、より良い解決策はありますか?