Windowsフォームアプリケーションとオフィスアドインを同時にインストールするためのinnoセットアップを準備しています。インストール中にすべての Windows フォーム ファイル (exe および dll) と Office アドイン展開ファイルを展開し、すべて正常に動作します。しかし、最後に、オフィスアドイン「setup.exe」がまだ実行されている間に、「インストールが完了しました」画面が表示されました。バックグラウンドで他のインストール済みの実行中またはポップアップが表示されることは気にしませんが、他のアプリケーションの実行中に inno セットアップが「終了」と表示されるのは好きではありません。
これは私のコードです:
[Run]
Filename: "{app}\AddIn\Deploy\setup.exe"; Flags: waituntilterminated runminimized
Filename: "{app}\MyApp.exe"; Description: {cm:LaunchProgram,{cm:MyAppName}}; Flags: nowait postinstall
それで、それは「runminimized」には従いませんが、とにかく私は大丈夫です....しかし、「waituntilterminated」にも従いません。
「AddIn\Deploy\setup.exe」は、Office アドインの「発行」ウィザードによって Visual Studio によって生成されたファイルであることに注意してください。
このコードのみを実行できれば幸いです。
[code]
function PrepareToInstall(var NeedsRestart: Boolean): String;
var
ResultCode : Integer;
begin
if Exec(ExpandConstant('{app}\AddIn\Deploy\setup.exe'), '', '', SW_SHOW, ewWaitUntilTerminated, ResultCode) then
begin
Result := 'AddIn Installed';
end
else
Result := 'AddIn NOT Installed';
NeedsRestart := false;
end;
しかし、メインの inno インストーラーがファイルを「AddIn\Deploy」ディレクトリにコピーした直後に実行する必要があります...したがって、オーバーライドする適切なイベントが必要になる場合があります。