3

我正在努力做到这一点,以便我可以将使用 Midas.dll 的 firemonkey 项目部署到另一台机器上,而无需复制 DLL。 本文解释了如何通过在你的 uses 子句中包含 MidasLib 来使用 delphi 项目执行此操作,如下所示:

program Project1;

uses
  MidasLib,
  Forms,
  Unit1 in 'Unit1.pas' {Form1};

我对 delphi 不是很熟悉,但我假设在 C++ 中我想在#include语句的位置使用uses语句。由于 MidasLib 是一个 .pas 文件,我假设我应该包含Midas.hpp. 但是,即使我包含Midas.hpp在使用它的文件中,我仍然会收到一个异常提示“未找到 Midas.dll”。

如何部署我的项目而无需复制 Midas.dll 文件?

4

1 回答 1

2

您还应该链接静态库并调用该RegisterMidasLib函数:

#include <Midas.hpp>

// or use the Project Manager's "Add to Project" option
#pragma comment(lib, "midas.lib")

extern "C" __stdcall DllGetDataSnapClassObject(REFCLSID, REFIID, void **);

void InitMidas() 
{
  #pragma startup InitMidas 254
  RegisterMidasLib(DllGetDataSnapClassObject);
}

更多细节在这里

于 2015-09-19T17:04:46.777 回答