Ho una libreria collegata staticamente che utilizza alcune funzioni da una DLL che ho bisogno di ritardare-caricare. Quindi nelle proprietà del mio eseguibile ho aggiunto questa DLL sotto Linker/Input/Delay Loaded DLLs
. Non posso aggiungere questa opzione nella lib stessa poiché non ha le pagine di proprietà Linker
(perché è una lib statica)
Quindi ora ogni volta che uso questa lib in un altro strumento eseguibile ho bisogno di aggiungere l'opzione di caricamento ritardato ancora e ancora, che voglio evitare. So che ci usato per essere un pragma per questoSpecificare il ritardo di caricamento della DLL con #pragma nel file cpp
#pragma comment(linker, "/DELAYLOAD:mydll.dll")
Tuttavia non funziona per me, perché si dice
warning LNK4229: invalid directive '/DELAYLOAD:mydll.dll' encountered; ignored
C'è una via d'uscita, diversi da LoadLibrary?
Secondo http://social.msdn.microsoft.com/Forums/vstudio/en-US/807606af-f7d7-4d9b-a9f3-062b23fddb2b/using-the-delayload-linker-switch-with-a-custom -Dll dovrebbe essere possibile con il pragma. –
sì ho pensato così, ma sembra che non funzioni nel mio vs2008 – spiritwolfform