gpt4 book ai didi

dll - 如何在 Inno Setup 中安装和卸载时使用具有依赖项的 DLL?

转载 作者:行者123 更新时间:2023-12-04 02:15:25 27 4
gpt4 key购买 nike

我想在卸载应用程序时在我的 .iss 中导入两个 dll。我找不到执行此操作的方法。

procedure Installed();
external 'Installed@files:StatisticInstallInfo.dll,adcore.dll cdecl setuponly ';

procedure Uninstalled();
external 'Uninstalled@{app}\StatisticInstallInfo.dll cdecl uninstallonly';

我也想在程序Uninstalled 中导入adcore.dll。它失败了,如下所示;

[Files]
Source: {#MyDefaultPackDir}\adcore.dll; DestDir: "{app}"
Source: {#MyDefaultPackDir}\StatisticInstallInfo.dll; DestDir: "{app}"
[Code]
procedure Uninstalled();
external 'Uninstalled@files:StatisticInstallInfo.dll,adcore.dll cdecl uninstallonly';

它不起作用。

Installed()Uninstalled()StatisticInstallInfo.dll中,它依赖于adcore.dll.

最佳答案

当安装程序运行时,Inno 可以访问安装程序的内容,因此可以使用 files:file1.dll,file2.dll 语法提取所需的任何文件。

在卸载时,Inno 不再可以访问安装程序的内容,因此它需要依赖于您在安装时使用普通 [Files] 条目提取的任何内容。因此,它不再关心依赖关系并将其留给您。

[Files]
Source: "StatisticInstallInfo.dll"; DestDir: "{app}"
Source: "adcore.dll"; DestDir: "{app}"

[Code]
procedure Installed();
external 'Installed@files:StatisticInstallInfo.dll,adcore.dll cdecl setuponly';

procedure Uninstalled();
external 'Uninstalled@{app}\StatisticInstallInfo.dll cdecl uninstallonly';

根据您调用该函数的时间(如果在安装之后),您可以废弃 files:... 语法并只使用 {app}\StatisticInstallInfo.dll 在这两种情况下。

关于dll - 如何在 Inno Setup 中安装和卸载时使用具有依赖项的 DLL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12582153/

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