Inno Setupでサイレントおよび非常にサイレントなアンインストールを無効にすることは可能ですか?
3303 次
1 に答える
3
直接無効にすることはできませんが、サイレントモードで実行されているかどうかを確認し、InitializeSetup()
/InitialiseUninstall()
イベント機能中にメッセージ/終了を表示することはできます。
function InitializeSetup(): Boolean;
begin
// Default to OK
result := true;
// If it's in silent mode, exit
if WizardSilent() then
begin
MsgBox('This setup doesn''t support silent installations.', mbInformation, MB_OK);
result := false;
end;
end;
またはアンインストールの場合:
function InitializeUninstall(): Boolean;
begin
// Default to OK
result := true;
// If it's in silent mode, exit
if UninstallSilent() then
begin
MsgBox('This setup doesn''t support silent uninstallation.', mbInformation, MB_OK);
result := false;
end;
end;
(未テストのエアコード)
サイレントモード(???:o)でセットアップを再度非サイレントモードで再実行する場合は、InitializeSetup
ifブロック内でこれを使用できます。
ShellExecAsOriginalUser('', ExpandConstant('{srcexe}'), '', '', SW_SHOWNORMAL, ewNoWait, 0);
これにより、渡された他のパラメータもすべて削除され、昇格のプロンプトが再度表示されることに注意してください。
于 2012-05-30T13:39:17.033 に答える