如果程序中出现上面的问题,看看下面的哪一条你没有用到:
1.在程序连接器中没有导入lib文件
2.在程序中没有引入头文件
3.自己写的DLL中有没有未写的虚函数
4.函数的参数是否正确
5.注意:是否使用了正确的字符集
其中第1类问题最容易出现,第5类问题最隐蔽。
关于第5类说明一下:
是我在做项目的时候,遇见的情况。VS2008默认使用Unicode编码,而DLL中用的是多字符编码的方式。这样就连接不上了。在VS2008中修改一下编码方式则可以顺利连接。注意要删除连接器中的函数入口。应为字符集发生改变的话,入口函数也会发生改变。
上面有不对的地方和不完善的地方,希望大家能够指出来。我及时更正,以便能帮助更多的人。
谢谢了!