Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1807 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [VBA excel] composant ActiveX

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[VBA excel] composant ActiveX

n°430083
dane
Posté le 17-06-2003 à 08:43:23  profilanswer
 

Qu'est ce qu'un composant activeX, un composant activeX a t il besoin d'une bibliothèque particulière?
 
La réponse à ces questions m'aidera sûrement à comprendre le message d'erreur suivant:
 
un composant activeX ne peut pas créer un objet.

mood
Publicité
Posté le 17-06-2003 à 08:43:23  profilanswer
 

n°430100
MagicBuzz
Posté le 17-06-2003 à 09:14:32  profilanswer
 

Bah...
 
Ca dépends.
 
Un ActiveX est un objet contenu courrament dans une DLL ou dans un fichier OCX.
 
Si ce fichier fait lui-même appel à un autre ActiveX qui n'est pas installé, alors oui, ça peut planter.
 
Mais ça ne fera certainement pas ton erreur, mais plutôt "Can't create ActiveX object, PROGID not found".
 
Cependant, dans la plupart des cas, pour utiliser un ActiveX (à moins qu'il soit directement lié au projet) tu as par contre besoin d'enregistrer la librairie dans la BDR. Tu ne risques rien à le faire plusieurs fois, ça ne fera pas d'erreur s'il est déjà enregistré.
 
Pour enregister une DLL (et ainsi rendre disponible ses classes/objets) ouvre une console et tape :
 

regsvr32 la_bibliothèque.dll


 
(ou regsvr tout court si tu n'est pas sous NT/2K/XP)
 
"la_bibliothèque.dll" est le nom complet (chemin inclu s'il est dans un autre répertoire) de la DLL ou de l'OCX à enregistrer.
 
Pour désinscrire une bibliothèque, c'est la même syntaxe, met avec le commutateur "/u" (pour "unreg" )
A ce moment, la DLL ne sera plus disponible pour les autre programmes (obligatoire si tu dois recompiler la DLL par exemple, puisque tant qu'elle est inscrite, tu auras de gros problèmes d'accès dessus, à cause du DLLHOST qui conserve souvent la main sur les DLL même si aucun programme ne les utilise)
 
 
Sinon, pour ton problème, poste ton code qui pose problème, indique le langage, quelle DLL s'est et tout... Parceque avec juste un message d'erreur sans même savoir quel langage c'est, c'est pas évident ;)
 
PS (dernier) : généralement, ce message est levé lorsque le constructeur de l'objet appelé à échoué. Ca peut être pour plusieurs raisons : ressources insuffisantes, droits insuffisants, mauvaise version de DLL, etc.

n°430704
dane
Posté le 17-06-2003 à 15:42:47  profilanswer
 

merci pour ta réponse
 
Mon erreur vient du fait que le fichier de configuration du driver Access ODBC n'a pas été configuré lors de l'installation d'office 97 ce matin. Or l'erreur survient juste au moment où j'essaie d'ouvrir un fichier access(*.mdb).  
 
Il faudrait donc que je remette la dll congigurée dans la base de registre comme tu l'explique dans ton message. Mais je ne sais pas quelle dll c'est.
 
PS: mon code fonctionne sur des postes de travail bien configuré
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [VBA excel] composant ActiveX

 

Sujets relatifs
[excel VBA] test valeur numérique[VBA] Dernière ligne d'un fichier texte.
[VBA] Trouve la derniere cellule non-vide d'une colonne.[VBA excel] rouddown et nombres décimaux
[C/C++] - Librairies DLL et ActiveX pour l'utilisation du RS232[VBA + Access] Récupérer tous les champs de mes tables Access...
[VBA] Lire à partir d'un fichier texteActiveX et JavaBeans
Plus de sujets relatifs à : [VBA excel] composant ActiveX


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR