首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不使用Midas.dll C++部署项目

不使用Midas.dll C++部署项目
EN

Stack Overflow用户
提问于 2015-09-18 18:29:30
回答 1查看 1.3K关注 0票数 3

我试图做到这一点,这样我就可以部署一个使用Midas.dll到另一台计算机上的防火墙项目,而不必将DLL也复制到另一台机器上。这篇文章解释了如何在delphi项目中通过在uses子句中包含MidasLib来实现这一点,如下所示:

代码语言:javascript
复制
program Project1;

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

我不太熟悉delphi,但我假设在C++中,我希望在uses语句的地方使用#include语句。因为MidasLib是一个.pas文件,所以我想我应该包括Midas.hpp。然而,即使我在正在使用它的文件中包含了Midas.hpp,我仍然会得到一个异常,上面写着"Midas.dll未找到“。

如何部署我的项目而不必将Midas.dll文件复制过来?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-19 17:04:46

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

代码语言:javascript
复制
#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);
}

更详细的这里

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32658754

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档