在網上找了各種辦法,包括說無法使用相對路徑,但是我就是得使用相對路徑,方便程序的搬移。
現象:如題,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