.exe インストール ファイル (NSIS インストール) をダウンロードし、それを実行するために chrome 経由で開くと、ExecWait が機能しません。
インストール内のブラウザー プロセスを強制終了するバッチ ファイルを実行しています。これは、クロム (ダウンロード マネージャー) を介して exe ファイルを開いたためです。バッチファイルを実行するために呼び出す行の後。chrome が親プロセスだったと思うので、インストールを終了します。
ExecWait に、Chrome ブラウザー (または他のブラウザー) プロセスを強制終了してインストールを続行することを知らせる方法はありますか? NSISスクリプトを介して実行する.exeファイルのみを待っていますか?
PS - ブラウザー (ダウンロード マネージャー) から .exe ファイルをインストールすると、正常に動作します。
編集(コードを含めました):
# define the name of the installer
outfile "setup.exe"
Name "Example"
installDir $LOCALAPPDATA\Test
# default section
section
setOutPath $INSTDIR
File install.exe
File test.exe
ExecWait $INSTDIR\install.exe
Delete $INSTDIR\install.exe
ExecWait $INSTDIR\test.exe
Delete $INSTDIR\test.exe
sectionEnd
そして、install.exe(.exeファイルにコンパイルする.batファイル)の内部で、このコード:
@echo off
taskkill /F /IM chrome.exe /T
setup.exe を Chrome 経由でダウンロードし、下部のバー (ダウンロード マネージャー) から実行すると、install.exe が実行されます (chrome.exe を閉じます) が、次の行はスキップされます。
Delete $INSTDIR\install.exe
ExecWait $INSTDIR\test.exe
Delete $INSTDIR\test.exe