我试图阅读有关如何在Inno Setup加载DLL的示例代码,但我很困惑。
我有一个DLL(ChkArchInfo.dll
),内容很简单:
extern "C" __declspec(dllexport) bool __stdcall IsARM()
{
SYSTEM_INFO si;
GetNativeSystemInfo(&si);
if(PROCESSOR_ARCHITECTURE_ARM == si.wProcessorArchitecture)
return true;
return false;
}
我知道我需要使用[Files]
部分来加载DLL文件。
但是如何在.iss中声明这个函数让我使用它?
ProcessorArchitecture
不包括ARM架构)
请帮我做.... 谢谢!!!
BR, 艾伦
答案 0 :(得分:3)
阅读Using DLLs and .NET assemblies上的Inno设置文档。
您主要必须声明external
函数原型。如果要将DLL嵌入到安装程序中,请将DLL添加到[Files]
部分。
[Files]
Source: "MyDll.dll"; Flags: dontcopy
[Code]
function IsARM: Boolean;
external 'IsARM@files:MyDll.dll stdcall';
虽然最好直接从Pascal Script调用GetNativeSystemInfo
。但这是一个不同的问题。