"un activeX ne peut pas créer d'objet"

Le
cyril6910
Bonjour,

J'ai developpé des DLL en C# et j'en ai rendu quelques une visible

par COM.
Je travaille sous Visual Studio 2008 et le framework 3.5.
Par conséquent, VS2008 me génère les .tlb pointant sur mes DLL et

me permettant de les référencer en VBA.

J'ai une application ACCESS 2003 où je référence mon .tlb. Dans mon

code VBA, j'instancie un objet de ma DLL:

Dim translator As ASSSEMBLY.ITranslator
Set translator = New ASSSEMBLY.Translator
translator.LoadTranslation 1, connectionString




Tout fonctionne bien pour l'instant mais lorsque je copie mon MDB

ou mon MDE sur un autre poste, j'ai l'erreur "un activeX ne peut

créer d'objet" lors de l'exécution.


Bien sûr, j'ai cherché sur le net.
Sur le poste client, j'ai réenregistré DAO260.dll. J'ai mis le SP1

du framework 3.5.
J'ai vérifier mes références dans mon MDB.
J'ai réinstallé MSAccess 2003, etc

J'installe mes DLL (et .tlb) par le biais d'un kit d'install généré

par VS2008.

Sur le poste client, j'ai fait le test avec une

appli access vide en référencant mon tlb puis en instanciant un

objet et ça ne marche pas!

Je ne comprends pas d'où vient le problème.

Sur mon poste, tout est OK mais dès que je pose l'appli ailleurs,

j'ai l'erreur.

QQ'un aurait-il une idée?
Merci.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Michel__D
Le #18392861
Bonjour,

Je ne sais pas si cela s'applique à ta façon de procéder, mais
généralement pour pouvoir utiliser les composants COM il faut
enregistrer la DLL correspondante.

http://support.microsoft.com/kb/249873/fr


"cyril6910" news:
Bonjour,

J'ai developpé des DLL en C# et j'en ai rendu quelques une visible

par COM.
Je travaille sous Visual Studio 2008 et le framework 3.5.
Par conséquent, VS2008 me génère les .tlb pointant sur mes DLL et

me permettant de les référencer en VBA.

J'ai une application ACCESS 2003 où je référence mon .tlb. Dans mon

code VBA, j'instancie un objet de ma DLL:

Dim translator As ASSSEMBLY.ITranslator
Set translator = New ASSSEMBLY.Translator
translator.LoadTranslation 1, connectionString




Tout fonctionne bien pour l'instant mais lorsque je copie mon MDB

ou mon MDE sur un autre poste, j'ai l'erreur "un activeX ne peut

créer d'objet" lors de l'exécution.


Bien sûr, j'ai cherché sur le net.
Sur le poste client, j'ai réenregistré DAO260.dll. J'ai mis le SP1

du framework 3.5.
J'ai vérifier mes références dans mon MDB.
J'ai réinstallé MSAccess 2003, etc...

J'installe mes DLL (et .tlb) par le biais d'un kit d'install généré

par VS2008.

Sur le poste client, j'ai fait le test avec une

appli access vide en référencant mon tlb puis en instanciant un

objet et ça ne marche pas!

Je ne comprends pas d'où vient le problème.

Sur mon poste, tout est OK mais dès que je pose l'appli ailleurs,

j'ai l'erreur.

QQ'un aurait-il une idée?
Merci.


Michel__D
Le #18393811
Re,

A voir peut-être aussi ce lien :

http://msdn.microsoft.com/fr-fr/library/tzat5yw6(VS.80).aspx


"Michel__D"
Bonjour,

Je ne sais pas si cela s'applique à ta façon de procéder, mais
généralement pour pouvoir utiliser les composants COM il faut
enregistrer la DLL correspondante.

http://support.microsoft.com/kb/249873/fr


"cyril6910" news:
> Bonjour,
>
> J'ai developpé des DLL en C# et j'en ai rendu quelques une visible
>
> par COM.
> Je travaille sous Visual Studio 2008 et le framework 3.5.
> Par conséquent, VS2008 me génère les .tlb pointant sur mes DLL et
>
> me permettant de les référencer en VBA.
>
> J'ai une application ACCESS 2003 où je référence mon .tlb. Dans mon
>
> code VBA, j'instancie un objet de ma DLL:
>
> Dim translator As ASSSEMBLY.ITranslator
> Set translator = New ASSSEMBLY.Translator
> translator.LoadTranslation 1, connectionString
>
>
>
>
> Tout fonctionne bien pour l'instant mais lorsque je copie mon MDB
>
> ou mon MDE sur un autre poste, j'ai l'erreur "un activeX ne peut
>
> créer d'objet" lors de l'exécution.
>
>
> Bien sûr, j'ai cherché sur le net.
> Sur le poste client, j'ai réenregistré DAO260.dll. J'ai mis le SP1
>
> du framework 3.5.
> J'ai vérifier mes références dans mon MDB.
> J'ai réinstallé MSAccess 2003, etc...
>
> J'installe mes DLL (et .tlb) par le biais d'un kit d'install généré
>
> par VS2008.
>
> Sur le poste client, j'ai fait le test avec une
>
> appli access vide en référencant mon tlb puis en instanciant un
>
> objet et ça ne marche pas!
>
> Je ne comprends pas d'où vient le problème.
>
> Sur mon poste, tout est OK mais dès que je pose l'appli ailleurs,
>
> j'ai l'erreur.
>
> QQ'un aurait-il une idée?
> Merci.



Michel__D
Le #18393801
Ainsi que celui-ci

http://www.developpez.net/forums/d6267/webmasters-developpement-web/outils/xmlrad/enregistrement-fichiers-tlb/


"Michel__D"
Re,

A voir peut-être aussi ce lien :

http://msdn.microsoft.com/fr-fr/library/tzat5yw6(VS.80).aspx


"Michel__D" > Bonjour,
>
> Je ne sais pas si cela s'applique à ta façon de procéder, mais
> généralement pour pouvoir utiliser les composants COM il faut
> enregistrer la DLL correspondante.
>
> http://support.microsoft.com/kb/249873/fr
>
>
> "cyril6910" > news:
> > Bonjour,
> >
> > J'ai developpé des DLL en C# et j'en ai rendu quelques une visible
> >
> > par COM.
> > Je travaille sous Visual Studio 2008 et le framework 3.5.
> > Par conséquent, VS2008 me génère les .tlb pointant sur mes DLL et
> >
> > me permettant de les référencer en VBA.
> >
> > J'ai une application ACCESS 2003 où je référence mon .tlb. Dans mon
> >
> > code VBA, j'instancie un objet de ma DLL:
> >
> > Dim translator As ASSSEMBLY.ITranslator
> > Set translator = New ASSSEMBLY.Translator
> > translator.LoadTranslation 1, connectionString
> >
> >
> >
> >
> > Tout fonctionne bien pour l'instant mais lorsque je copie mon MDB
> >
> > ou mon MDE sur un autre poste, j'ai l'erreur "un activeX ne peut
> >
> > créer d'objet" lors de l'exécution.
> >
> >
> > Bien sûr, j'ai cherché sur le net.
> > Sur le poste client, j'ai réenregistré DAO260.dll. J'ai mis le SP1
> >
> > du framework 3.5.
> > J'ai vérifier mes références dans mon MDB.
> > J'ai réinstallé MSAccess 2003, etc...
> >
> > J'installe mes DLL (et .tlb) par le biais d'un kit d'install généré
> >
> > par VS2008.
> >
> > Sur le poste client, j'ai fait le test avec une
> >
> > appli access vide en référencant mon tlb puis en instanciant un
> >
> > objet et ça ne marche pas!
> >
> > Je ne comprends pas d'où vient le problème.
> >
> > Sur mon poste, tout est OK mais dès que je pose l'appli ailleurs,
> >
> > j'ai l'erreur.
> >
> > QQ'un aurait-il une idée?
> > Merci.
>



Publicité
Poster une réponse
Anonyme