我使用vc建立了一个dll文件,并且用vc调用,但是调用的时候总是报错:
test2 error LNK2019: unresolved external symbol __imp__GetModuleUsage referenced in function _Dlg_Proc@16
只有把dll和调用的exe项目放在一个solutiong中,并且在solution 中把调用的project的depends on选中才一切正常。
如果使用调用的project中的linker的import library进行设置,也报这个错误。
使用动态调用,设置了__declspec(dllimport)也不行。执行到LoadLibrary的时候一切正常,但是只要一加入调用的函数,就不能变异。我使用GetProcAddress得到函数的地址,然后通过地址使用则一切正常,但是只限于使用def文件的时候,如果不进行处理还是无法使用。另外,我看了看书中的例子,全都使用了solution 中的depends on选项,如何可以不用?如何使用动态链接?困扰了我好几天,谁能帮帮我?谢谢。
test2 error LNK2019: unresolved external symbol __imp__GetModuleUsage referenced in function _Dlg_Proc@16
只有把dll和调用的exe项目放在一个solutiong中,并且在solution 中把调用的project的depends on选中才一切正常。
如果使用调用的project中的linker的import library进行设置,也报这个错误。
使用动态调用,设置了__declspec(dllimport)也不行。执行到LoadLibrary的时候一切正常,但是只要一加入调用的函数,就不能变异。我使用GetProcAddress得到函数的地址,然后通过地址使用则一切正常,但是只限于使用def文件的时候,如果不进行处理还是无法使用。另外,我看了看书中的例子,全都使用了solution 中的depends on选项,如何可以不用?如何使用动态链接?困扰了我好几天,谁能帮帮我?谢谢。
还有DLL放置的路径问题。一般建议放到EXE相同的目录下。如果是系统DLL,则放到WINDOWS系统system32目录下。
项目 - 配置属性 - 链接器 - 输入 - 附加依赖项
动态调用的时候没有函数声明,当然不能用__declspec(dllimport)。 ——以上只是个人理解,仅供参考。