inno-setup - Inno Setup 不会在 PrepareToInstall 部分重新启动
问题描述
我试图在启用 MSSQLServer 所必需的 .NET 3.5 后提示用户重新启动计算机。例子:
function PrepareToInstall(var NeedsRestart: Boolean): String;
begin
Log('PrepareToInstall() called');
GetWindowsVersionEx(Version);
if (Version.Major = 10) then begin
NeedsRestart :=True;
end
end;
我错过了什么吗?
解决方案
NeedsRestart
仅当PrepareToInstall
事件函数实际中止安装(通过返回非空字符串)时才考虑参数。你可能不想做的事情。换句话说,您正在滥用PrepareToInstall
事件功能(无论如何都是错误的)。
[Code]
function NeedRestart(): Boolean;
var
Version: TWindowsVersion;
begin
GetWindowsVersionEx(Version);
Result := (Version.Major >= 10);
end;
推荐阅读
- python - 不能为熊猫造轮子
- amazon-s3 - 在 freemarker 中使用 S3 云前端的 Magnolia
- java - 显示anr时如何强制android应用程序等待?
- html - 边框半径和框阴影错误
- python - 我想将任何日期格式转换为 UTC 欧洲日期时间格式
- flutter - 在颤动中调用外部库
- deployment - 已部署的 Outlook 应用程序未在 Microsoft Admin Center 中显示说明
- synchronization - Vulkan:可以在等待栅栏读取先前提交的写入后提交的工作吗?
- azure - Azure Web App Service 自定义域读取证书
- iis - 在 Windows Server 2019 上以域用户身份运行时,IIS 站点不会显示静态内容