【发布时间】:2012-11-16 16:34:40
【问题描述】:
我对 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。
【问题讨论】:
-
什么返回
Exec函数,True 还是 False?调用后ResultCode的值是多少? -
Exec之前ResultCode为0,之后为267。
-
您确实意识到该应用会触发恶意软件/间谍软件和防火墙,对吧?而且您使用
runhidden这样做的事实看起来非常可疑?我建议人们不要安装它,因为它看起来可能是恶意行为。
标签: inno-setup uninstallation pascal