在网上找了各种办法,包括说无法使用相对路径,但是我就是得使用相对路径,方便程序的搬移。
现象:如题,LoadLibrary函数返回NULL, GetLastError返回126,将dll搬移到程序目录下,加载成功,但是无法找到函数,GetLastError返回127。
解决方法:路径写错了release写成realese,dll名称也写串了,因为有好几个dll都要加载;
教训:以后写代码一定要在清醒的时候,上次写的时候太困了,都没仔细检查。
我的加载方式如下:
#ifdef _DEBUG
HINSTANCE hDLL = LoadLibrary("../debug/mydll.dll");
#else
HINSTANCE hDLL = LoadLibrary("../release/mydll.dll");
#endif