首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

dll的类导入、导出的有关问题

2012-03-06 
dll的类导入、导出的问题我在一个.cpp文件中导出了以下类:#includeMProcess.HPP#includeMThread.HPPcla

dll的类导入、导出的问题
我在一个.cpp文件中导出了以下类:
#include   <MProcess.HPP>
#include   <MThread.HPP>
class   _export   MProcess;
class   _export   MThread;

用VC的工具Dependency   Walker查看生成的.dll
@$xp$7MThread
@$xp$8MProcess
@MProcess@
@MThread@

现在,我要使用该.dll中的这些类,请问怎么导入呢?
静态?动态?

[解决办法]
使用该.dll的工程如果是bcb工程
将只能“静态”。

首先需要在BCB的项目中加入输入接口库(import library),打开工程项目,使用BCB View|Project Manager打开项目列表,向项目中加入接口库(*.lib)。
其次加入dll头文件中该类声明。
注意__declspec(dllimport)代替__declspec(dllexport)

[解决办法]
我记得 似乎 导出类只能使用静态方式调用;


静态调用就是直接把DLL的类文件头包含到你的新的工程;;

__declspec(dllimport) class __stdcall YourDllClass {
public:
YourDllClass();
......
};
[解决办法]
当然别忘了:使用 $BCB path\Bin\implib.exe 生成 Lib 文件,加入到工程文件中

热点排行