【问题标题】:Import c++class from dll [duplicate]从dll导入c ++类[重复]
【发布时间】:2014-07-02 20:43:02
【问题描述】:

如果我想从 DLL 中导入 C++ 类,在LoadLibrary() 返回后应该使用哪个 API?

我在以下链接中搜索,但我刚刚找到了GetProcAddress(),它似乎不适用于课程。 http://msdn.microsoft.com/en-us/library/windows/desktop/ms682599%28v=vs.85%29.aspx

【问题讨论】:

  • "import" 不是 C++ 概念(除非您指的是 Microsoft 特定的 #import,它是编译时操作(不需要 LoadLibrary()。)。您是否尝试 1)创建一个在 DLL 中声明和定义的类的实例,或 2) 使用由 DLL 中的方法返回的类或 3) 从 DLL 中声明/定义的基类派生您自己的类,或 [其他]。 ...
  • “import”可能不适合,我只想在DLL中使用一个c++类,我需要一个函数来获取它
  • 你为什么要调用 LoadLibrary()?
  • 我称之为因为我需要将dll加载到内存中,抱歉我可能解释不清楚,我的问题是如何在我的程序中使用c++类,并且该类在dll中,并且LoadLibrary() 之后应该怎么写?
  • 请查看有关 __declspec 的链接问题(那边 ---> ),看看这是否回答了您的问题。如果是这样,请考虑将此问题作为重复问题关闭。

标签: c++ visual-studio-2013


【解决方案1】:

您不能使用LoadLibrary 导入类。

您需要在编译时使用头文件和导入库和链接。头文件将使用__declspec(dllimport) 来导入类。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-06
    • 1970-01-01
    • 1970-01-01
    • 2015-12-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多