gpt4 book ai didi

inno-setup - Inno Setup中调用exe卸载

转载 作者:行者123 更新时间:2023-12-04 06:30:43 32 4
gpt4 key购买 nike

我对 Inno Setup 卸载程序有疑问。我有一个 exe 文件,我想执行它来跟踪安装和卸载。该 exe 非常简单,可以向服务器发送消息。

[Files]
Source: "Tracker\LocalSandboxInstallTracker.exe"; DestDir: "{app}/Tracker";
Source: "Tracker\LocalSandboxInstallTracker.exe.config"; DestDir: "{app}/Tracker";
Source: "Tracker\Tracker.Client.dll"; DestDir: "{app}/Tracker";

[Run]
Filename: "{app}\Tracker\LocalSandboxInstallTracker.exe"; Parameters: " {#MyAppVersion} install"; Flags: runhidden; StatusMsg: "Sending tracking data..."

[Code]
procedure InitializeUninstallProgressForm();
var
ResultCode: Integer;
begin
Exec ('{app}\Tracker\LocalSandboxInstallTracker.exe',' {#MyAppVersion} uninstall','',SW_SHOW, ewWaitUntilTerminated, ResultCode);
end;

安装时调用效果很好,但卸载时效果不佳。我在我的 Exec 命令中放置了一个断点,它确实通过了那里,但似乎没有调用 exe。

最佳答案

您必须先展开 {app} 常量,然后再将其传递给 Exec 脚本函数。使用 ExpandConstant每当您需要获取常量的值时。以这种方式修改您的脚本:

Exec(ExpandConstant('{app}\Tracker\LocalSandboxInstallTracker.exe'), 
'{#MyAppVersion} uninstall', '', SW_SHOW,
ewWaitUntilTerminated, ResultCode);

此外,您应该检查函数结果和输出结果代码,以便在 Exec 函数失败时使用react。您将在 ResultCode 中获得的错误代码您可以对照 System Error Codes 进行检查引用或使用 SysErrorMessage(ResultCode) 从脚本中获取错误描述。

关于inno-setup - Inno Setup中调用exe卸载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13611622/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com