原因及分析:
此时由于.library和.dll文件版本不匹配造成的。比如.lib里有20个函数,.dll只有19个函数,当windows加载动态链接库的时候,它检查是否匹配,否则报错。
在项目需要运行多个不同版本的dll文件时候,容易出现此问题。此时隐式调用Dll。
解决办法:
采用显示调用,手工加载的办法。
1)声明函数指针原型。
2)LoadLibrary()
3)GetProcAddress()
4)比较重要,在调用此函数指针的时候,判断是否NULL。因为在dll文件里没有实现的函数指针是NULL。