IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage C++ Discussion :

Link sur une dll avec un objet contenu dans cette dll


Sujet :

Langage C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2004
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 35
    Par défaut Link sur une dll avec un objet contenu dans cette dll
    bonjour,

    j'ai un pb de compilation bizarre, du moins au link en release. J'ai une dll dans laquelle j'ai une classe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    class KCLASS KW_GenWorld : public KW_GENWORLD_PARENT
    {
    protected:
    	virtual KBool					KMTH kInit();
    	virtual void						KMTH kShut();
    public:
    	inline virtual KInt32				KMTH kGetNbFields() const;
    	inline virtual const KFieldInfo		        KMTH kGetFieldInfo(KInt32 i) const;
    	virtual void						KMTH kUpdate();
    	virtual const KS_DisplayData *		KMTH kGetInternDisplayData(const KDrawInfo * di);
    			KBool					KMTH kGetDirectionnalShadow(KDD_Shadowed &kDD);
    	virtual	void					KMTH kBeforeReload(KS_InStream& Stream);
    	virtual KBool					KMTH kReadContents(KS_InStream& stream, KInt32 format=KS_IOFORMAT_DEFAULT);
    	virtual KBool					KMTH kWriteContents(KS_OutStream& stream, KInt32 format=KS_IOFORMAT_DEFAULT);
    			void					KMTH kInvalidateBBox()	{ kBBoxUpToDate = KFALSE; }
    	virtual KBBoxLocal					KMTH kGetBBox();
    	virtual void						KMTH kBBoxUpdate();
    		void						KMTH kSetRoot(KW_3DNodeHdl &_RootObjHdl);
    	inline	const KW_3DNodeHdl &		        KMTH kGetRoot(){return RootObjHdl;}
     
    ....
    KMTH est un define de __fastcall
    KCLASS est une define pour faire un __declspec( dllexport )

    toutes mes fonctions sont bien codé dans un CPP. Et pourtant j'ai cette erreur au link

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual void __fastcall KW_GenWorld::kNeedSave(void)" (?kNeedSave@KW_GenWorld@@UAIXXZ)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual void __fastcall KW_GenWorld::kDoDependencies(bool)" (?kDoDependencies@KW_GenWorld@@UAIX_N@Z)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual int __fastcall KW_GenWorld::kGetAllDependencies(struct KW_DependenciesList &,bool)" (?kGetAllDependencies@KW_GenWorld@@UAIHAAUKW_DependenciesList@@_N@Z)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual void __fastcall KW_GenWorld::kUnSetDependencies(struct KW_GraphObjectHdl &,bool)" (?kUnSetDependencies@KW_GenWorld@@UAIXAAUKW_GraphObjectHdl@@_N@Z)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual void __fastcall KW_GenWorld::kChangeDependencies(struct KW_GraphObjectHdl &,struct KW_GraphObjectHdl &)" (?kChangeDependencies@KW_GenWorld@@UAIXAAUKW_GraphObjectHdl@@0@Z)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual void __fastcall KW_GenWorld::kBBoxUpdate(void)" (?kBBoxUpdate@KW_GenWorld@@UAIXXZ)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "protected: virtual bool __fastcall KW_GenWorld::kInit(void)" (?kInit@KW_GenWorld@@MAI_NXZ)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "protected: virtual void __fastcall KW_GenWorld::kShut(void)" (?kShut@KW_GenWorld@@MAIXXZ)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual void __fastcall KW_GenWorld::kUpdate(void)" (?kUpdate@KW_GenWorld@@UAIXXZ)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual void __fastcall KW_GenWorld::kBeforeReload(class KIStream &)" (?kBeforeReload@KW_GenWorld@@UAIXAAVKIStream@@@Z)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual bool __fastcall KW_GenWorld::kReadContents(class KIStream &,int)" (?kReadContents@KW_GenWorld@@UAI_NAAVKIStream@@H@Z)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual bool __fastcall KW_GenWorld::kWriteContents(class KOStream &,int)" (?kWriteContents@KW_GenWorld@@UAI_NAAVKOStream@@H@Z)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual struct KS_DisplayData const * __fastcall KW_GenWorld::kGetInternDisplayData(struct KDrawInfo const *)" (?kGetInternDisplayData@KW_GenWorld@@UAIPBUKS_DisplayData@@PBUKDrawInfo@@@Z)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual struct KBBoxLocal __fastcall KW_GenWorld::kGetBBox(void)" (?kGetBBox@KW_GenWorld@@UAI?AUKBBoxLocal@@XZ)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual bool __fastcall KW_GenWorld::kGetInfos(struct KDD_Tips &)" (?kGetInfos@KW_GenWorld@@UAI_NAAUKDD_Tips@@@Z)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual int __fastcall KW_GenWorld::kGetSubObjectTypedData(int,int,int,bool,bool)" (?kGetSubObjectTypedData@KW_GenWorld@@UAIHHHH_N0@Z)
    1>KW_GenWorld.obj : error LNK2001: symbole externe non résolu "public: virtual void __fastcall KW_GenWorld::kDelSubObjectTypedData(int,int,int,bool)" (?kDelSubObjectTypedData@KW_GenWorld@@UAIXHHH_N@Z)
    auriez-vous une idée de la solution. Merci d'avance

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 488
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 488
    Par défaut
    Pouvez-vous nous donner le code de la définition (pas ça déclaration) de la méthode "kNeedSave" de la classe KW_GenWorld ?

  3. #3
    Membre averti
    Inscrit en
    Mai 2004
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 35
    Par défaut
    voila

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    void	KW_GenWorld::kNeedSave(void)

  4. #4
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 488
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 488
    Par défaut
    Il ne manquerait pas un "KMTH" quelque par sur la ligne ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    KMTH void	KW_GenWorld::kNeedSave(void)

  5. #5
    Membre averti
    Inscrit en
    Mai 2004
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 35
    Par défaut
    Je viens de tester et j'ai toujours le même pb.

  6. #6
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 488
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 488
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    virtual void KMTH KW_GenWorld::kNeedSave(void)

Discussions similaires

  1. Réponses: 2
    Dernier message: 21/01/2015, 19h29
  2. Réponses: 21
    Dernier message: 03/06/2010, 18h26
  3. Accéder à une variable d'un objet contenu dans une collection
    Par derlone dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 30/04/2009, 16h50
  4. Réponses: 9
    Dernier message: 22/10/2007, 09h38
  5. Réponses: 4
    Dernier message: 08/03/2006, 19h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo