dll用法

来源:互联网 发布:淘宝卖家怎么收款 编辑:程序博客网 时间:2024/06/07 15:27

1 导出一个类,定义  class AFX_EXT_CLASS   WSWrapper

   在调用该dll的exe中,包含一个该类的.h文件(加不加dllimport都可以,它在obj中找不到的话自然就去lib中找了)。然后直接生成该类对象就可以了。另外,要加入相应的lib

 

2 导出一个类。exe也可以用loadLibrary()来做。只是在DLL中要加入一个createObject()函数,其中new一个类的对象并返回。

在exe中调用createobject()得到指针。利用该指针可以调用类的成员函数。但是也要加入相应的LIB。

 

3 在2的情况中如果不加入LIB的话,编译可通过,但链接不过,因为找不到类成员函数的真实代码(要么在obj中,要么在lib中)。

如果不想加入LIB的话,有两个方法,一个是在EXE中定义这个类的CPP文件,在其中实现它对应的成员函数,但是成员函数中是用getproaddress()去获取真正的代码地址,然后调用。 一是在EXE中定义一个类,在DLL中做一个该类的派生类。那样就可以链接过了。且调用时会调用到DLL中的类函数。

 

4 怎么写def文件?