是否可以在 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 回答