我在VS2013上使用VC ++。 我已经获得了32位版本的DLL“ABC.DLL”,它暴露了Apple(),Bananna()等函数。 在我的应用程序App.EXE代码中使用这些函数指针时,我确实使用
LoadLibrary("ABC.DLL");
GetProcAddress(DllHandler,"Apple@4");
GetProcAddress(DllHandler,"Bananna@8");
等。
我知道这些是装饰的名字。
我没有ABC.DLL的源代码。
现在,如果我在64位版本的App.EXE代码中使用64位版本的ABC.DLL, 以同样的方式(上面使用的GetProcAddress),我得到“NULL”作为每个使用的GetProcAddress()的返回值。 但LoadLibrary(“ABC.DLL”)成功了。
现在我想知道32位ABC.DLL&的装饰名称是否不同。 64位ABC.DLL? 我们怎么知道?细节会有所帮助。