herve-atos

Hello,

Since the KB921503's Windows Update, I have a problem with ATL and automation.

I use a DLL compiled with MS Visual C++ 6. I want to try to compile it with Visual C++ 2005 Express Edition but i've got these errors when linking DLL :

Edition des liens en cours...
.\WrapperSequence.def : warning LNK4222: un symbole exporte 'DllCanUnloadNow' ne doit pas se voir assigner un nombre ordinal
.\WrapperSequence.def : warning LNK4222: un symbole exporte 'DllGetClassObject' ne doit pas se voir assigner un nombre ordinal
.\WrapperSequence.def : warning LNK4222: un symbole exporte 'DllRegisterServer' ne doit pas se voir assigner un nombre ordinal
.\WrapperSequence.def : warning LNK4222: un symbole exporte 'DllUnregisterServer' ne doit pas se voir assigner un nombre ordinal
Creation de la bibliotheque .\ReleaseMinSize/WrapperSequence.lib et de l'objet .\ReleaseMinSize/WrapperSequence.exp
LINK : warning LNK4098: conflit entre la bibliotheque par defaut 'LIBCMT' et les autres bibliotheques ; utilisez /NODEFAULTLIB:library
DispatchWrapper.obj : error LNK2019: symbole externe non resolu __imp__AtlModuleAddTermFunc@12 reference dans la fonction "public: long __thiscall ATL::CComModule::AddTermFunc(void (__stdcall*)(unsigned long),unsigned long)" ( AddTermFunc@CComModule@ATL@@QAEJP6GXK@ZK@Z)
GestionnaireDeCapsule.obj : error LNK2001: symbole externe non resolu __imp__AtlModuleAddTermFunc@12
WrapperSequence.obj : error LNK2001: symbole externe non resolu __imp__AtlModuleAddTermFunc@12
DispatchWrapper.obj : error LNK2019: symbole externe non resolu __imp__AtlInternalQueryInterface@16 reference dans la fonction "public: static long __stdcall ATL::CComObjectRootBase::InternalQueryInterface(void *,struct ATL::_ATL_INTMAP_ENTRY const *,struct _GUID const &,void * *)" ( InternalQueryInterface@CComObjectRootBase@ATL@@SGJPAXPBU_ATL_INTMAP_ENTRY@2@ABU_GUID@@PAPAX@Z)
GestionnaireDeCapsule.obj : error LNK2001: symbole externe non resolu __imp__AtlInternalQueryInterface@16
WrapperSequence.obj : error LNK2001: symbole externe non resolu __imp__AtlInternalQueryInterface@16
DispatchWrapper.obj : error LNK2019: symbole externe non resolu __imp__AtlComPtrAssign@8 reference dans la fonction "public: struct ITypeInfo * __thiscall ATL::CComPtr:Surpriseperator=(struct ITypeInfo *)" ( 4 $CComPtr@UITypeInfo@@@ATL@@QAEPAUITypeInfo@@PAU2@@Z)
GestionnaireDeCapsule.obj : error LNK2001: symbole externe non resolu __imp__AtlComPtrAssign@8
WrapperSequence.obj : error LNK2001: symbole externe non resolu __imp__AtlComPtrAssign@8
WrapperSequence.obj : error LNK2019: symbole externe non resolu __imp__AtlModuleInit@12 reference dans la fonction "public: long __thiscall ATL::CComModule::Init(struct ATL::_ATL_OBJMAP_ENTRY *,struct HINSTANCE__ *,struct _GUID const *)" ( Init@CComModule@ATL@@QAEJPAU_ATL_OBJMAP_ENTRY@2@PAUHINSTANCE__@@PBU_GUID@@@Z)
WrapperSequence.obj : error LNK2019: symbole externe non resolu __imp__AtlModuleTerm@4 reference dans la fonction "public: void __thiscall ATL::CComModule::Term(void)" ( Term@CComModule@ATL@@QAEXXZ)
WrapperSequence.obj : error LNK2019: symbole externe non resolu __imp__AtlModuleRegisterServer@12 reference dans la fonction "public: long __thiscall ATL::CComModule::RegisterServer(int,struct _GUID const *)" ( RegisterServer@CComModule@ATL@@QAEJHPBU_GUID@@@Z)
WrapperSequence.obj : error LNK2019: symbole externe non resolu __imp__AtlModuleUnregisterServerEx@12 reference dans la fonction "public: long __thiscall ATL::CComModule::UnregisterServer(int,struct _GUID const *)" ( UnregisterServer@CComModule@ATL@@QAEJHPBU_GUID@@@Z)
WrapperSequence.obj : error LNK2019: symbole externe non resolu __imp__AtlModuleUpdateRegistryFromResourceD@20 reference dans la fonction "public: long __stdcall ATL::CComModule::UpdateRegistryFromResourceD(unsigned int,int,struct ATL::_ATL_REGMAP_ENTRY *)" ( UpdateRegistryFromResourceD@CComModule@ATL@@QAGJIHPAU_ATL_REGMAP_ENTRY@2@@Z)
WrapperSequence.obj : error LNK2019: symbole externe non resolu __imp__AtlModuleGetClassObject@16 reference dans la fonction "public: long __thiscall ATL::CComModule::GetClassObject(struct _GUID const &,struct _GUID const &,void * *)" ( GetClassObject@CComModule@ATL@@QAEJABU_GUID@@0PAPAX@Z)
.\ReleaseMinSize/WrapperSequence.dll : fatal error LNK1120: 9 externes non resolus
Le journal de generation a ete enregistre a l'emplacement "file://d:\tmp\WrapperSequence\ReleaseMinSize\BuildLog.htm"
WrapperSequence - 16 erreur(s), 16 avertissement(s)

Have you got an idea how to solve my problem
Thanks,

PS: I'm sorry if my English is approximative, but I'm a French desperate user...


Re: Visual C++ Express Edition Visual C++ 2005 Express : ATL link error....

João Paulo Figueira

As far as I know, ATL does not ship with the Express edition. I believe you will have to upgrade to a higher version to get ATL support.






Re: Visual C++ Express Edition Visual C++ 2005 Express : ATL link error....

PatickG

You could take a look at:

Using the Free Visual C++ 2005 Express Edition to Develop Win32 Applications

http://www.codeproject.com/useritems/FreeVS2005Win32.asp

and

Using WTL with Visual C++ 2005 Express Edition

http://www.codeproject.com/wtl/WTLExpress.asp