相关疑难解决方法(0)

如何使用导出C++类的DLL进行延迟加载

我有一个DLL one.dll,它使用TwoClasstwo.dllvia 导出的类class __declspec(dllexport).我想one.dll/delayloadtwo.dll,但我得到一个链接错误:

LINK : fatal error LNK1194: cannot delay-load 'two.dll' due to import
of data symbol '"__declspec(dllimport) const TwoClass::`vftable'"
(__imp_??_7TwoClass@@6B@)'; link without /DELAYLOAD:two.dll
Run Code Online (Sandbox Code Playgroud)

这是在发布版本中; 在Debug构建中它可以工作.(我不知道在vtable导出方面Release和Debug之间的区别是什么,我也找不到任何编译器开关或pragma来控制它.)

如何/delayload在发布版本中使用导出类似这样的类的DLL?

c++ windows dll vtable visual-studio

11
推荐指数
1
解决办法
5569
查看次数

标签 统计

c++ ×1

dll ×1

visual-studio ×1

vtable ×1

windows ×1