我想知道如何使用 NSIS 从可执行文件调用C++函数



我想知道如何使用 NSIS 从可执行文件C++调用函数。

我正在使用以下方法,但它没有调用该函数。

!include LogicLib.nsh
Section
SetOutPath $INSTDIR
  File E:TestNullSoftTest1.exe
  File E:TestNullSoftTest2.dll
System::Call 'KERNEL32::AddDllDirectory(w "$INSTDIR")'
Pop $1 ;
${If} $0 = 0
    MessageBox MB_OK "Function is NOT CALLED" IDOK
    
${EndIf}
SectionEnd

AddDllDirectory 函数在 C++ 项目中声明,如下所示:

不能调用.EXE文件中的函数,只能调用.DLL文件。

具体来说,System::Call将调用LoadLibraryGetProcAddressLoadLibrary无法加载.EXE。

最新更新