DirectX 9/Visual C 7.0/LNK2019

Le
Ignace
Bonjour

Je tente de compiler un exemple "basique" de DirecX9/DirectShow.
Mon environnement (Visual Studion 2003.NET) à correctement (?) convertit le
projet exemple (un .sln) mais j'ai un LNK2019 tenace. Le linker est perdu.

J'ai beau changer la génération de code Multithread/Monothread, utilisation
des ATL (static et dynamique) etc.
Rien n'y fait. Mon environnement semble OK (includes, librairies DirectX,
répertoire des classes exemple "de base").


Voila ma panne (peut-être triviale)
*******************************
<snip ok>
:
Édition des liens en cours
playwnd.obj :

error LNK2019: symbole externe non résolu "long __stdcall
ATL::AtlWinModuleInit(struct ATL::_ATL_WIN_MODULE70 *)"
(?AtlWinModuleInit@ATL@@YGJPAU_ATL_WIN_MODULE70@1@@Z) référencé dans la
fonction "public: __thiscall ATL::CAtlWinModule::CAtlWinModule(void)"
(??0CAtlWinModule@ATL@@QAE@XZ)
playwnd.obj :

error LNK2001: symbole externe non résolu "class ATL::CAtlBaseModule
ATL::_AtlBaseModule" (?_AtlBaseModule@ATL@@3VCAtlBaseModule@1@A)
.Debug/PlayWnd.exe : fatal error LNK1120: 2 externes non résolus
********************************
(pardon pour le 'collé' pas propre)
Merci

--
Ignace
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
adebaene
Le #9714401
"Ignace"
Bonjour

Je tente de compiler un exemple "basique" de DirecX9/DirectShow.
Mon environnement (Visual Studion 2003.NET) à correctement (?) convertit le
projet exemple (un .sln) mais j'ai un LNK2019 tenace. Le linker est perdu.

J'ai beau changer la génération de code Multithread/Monothread, utilisation
des ATL (static et dynamique) etc.
Rien n'y fait. Mon environnement semble OK (includes, librairies DirectX,
répertoire des classes exemple "de base").


Voila ma panne (peut-être triviale...)
*******************************
<snip ok>
:
Édition des liens en cours...
playwnd.obj :

error LNK2019: symbole externe non résolu "long __stdcall
ATL::AtlWinModuleInit(struct ATL::_ATL_WIN_MODULE70 *)"
(?@@@@Z) référencé dans la
fonction "public: __thiscall ATL::CAtlWinModule::CAtlWinModule(void)"
(??@@)
playwnd.obj :



AtlWinModuleInit est défini dans atlbase.inl. Si tu linkes
statiquement (_ATL_DLL pas défini et DEBUG pas défini), c'est inclus
indirectement quand tu #inclus atlbase.h. Sinon, la fonction est dans
la DLL atl71.dll, il faut se lier avec atl.lib

Arnaud

PS : Use the Force, read the source!
Ignace
Le #9714301
> AtlWinModuleInit est défini dans atlbase.inl. Si tu linkes
statiquement (_ATL_DLL pas défini et DEBUG pas défini), c'est inclus
indirectement quand tu #inclus atlbase.h. Sinon, la fonction est dans
la DLL atl71.dll, il faut se lier avec atl.lib

Arnaud

PS : Use the Force, read the source!



Merci

--
Ignace
Publicité
Poster une réponse
Anonyme