首页 > 解决方案 > 有没有办法在 Inno Setup 的 [Code] 部分中使用 64 位 DLL?

问题描述

在文档64-bit Installation Limitations中说:

您不能在该[Code]部分加载/使用 64 位 DLL,因为 Windows 不允许 32 位进程加载 64 位 DLL(反之亦然)。但是,32 位进程可以启动 64 位 EXE。使用 Exec 函数或[Run]部分来执行此操作。

这里的 LoadDLL据说该LoadDLL函数已被弃用,并且有一个指向使用 DLL 和 .NET 程序集的链接。但是这里没有关于位或LoadDLL功能的内容。为什么我仍然需要使用该LoadDLL函数,有没有办法在我的部分中使用 64 位 DLL [Code]

标签: dll64-bitinno-setup32bit-64bitpascalscript

解决方案


Inno Setup 是 32 位的,所以它只能加载 32 位的 DLL。系统的位数在这里没有影响。您引用的文档是正确且绝对清楚的:

您不能在 [代码] 部分加载/使用 64 位 DLL,因为 Windows 不允许 32 位进程加载 64 位 DLL(反之亦然)。


这并不意味着您的特定问题没有解决方案,您正试图通过加载 64 位 DLL 来解决该问题。但是您必须询问该特定问题。


推荐阅读