在我的项目中,我有一组要延迟加载的 DLL,即在首次使用时而不是在进程启动时加载。这意味着我想对某些 DLL(而不是 Qt 本身)使用 MSVC 链接器的 /DELAYLOAD 标志(有关更多说明,请参见 [1])。原因是某些用户在 DLL 初始化期间遇到崩溃(我们无法重现)。该软件以前的非 Qt 版本没有这个问题,但它使用了延迟加载,所以这可能会有所不同。
使用 QMake,我发现没有办法让延迟加载工作。有谁知道如何将 /DELAYLOAD 传递给 msvc 链接器,在绕过 qmake 时使用 qmake 功能?
[1] http://www.codeproject.com/KB/DLL/Delay_Loading_Dll.aspx