VB 6 probleme ocx [Résolu]

Messages postés
10
Date d'inscription
mercredi 3 mars 2010
Statut
Membre
Dernière intervention
31 mai 2010
- - Dernière réponse : cs_DARKSIDIOUS
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
- 12 mai 2010 à 11:54
Lors de la modification d'un module *.vgb j ai compilé et testé le programme tout marche bien, donc j ai crée le fichier OCX (*.ocx), donc j ai intégré le module ocx dans l application donc le module figure dans la boite à outil (VB6), lorsque j'ai essayé d'utiliser le module dans la feuille du projet (Forme) j'ai le message d erreur suivant :

[b]LA CLASSE N EST PAS ENREGISTREE.
RECHERCHE D UN OBJET AVEC CLSID :{8f0313CF-6B6F-11D3-98EB-00C04F9C0783}/b
Afficher la suite 

12 réponses

Meilleure réponse
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
73
3
Merci
Salut,

Apparement ton ocx n'est plus enregistré dans le registre (soit tu la recompilé en écrasant l'ancien fichier, sans utiliser la compatibilité binaire, soit tu as perdu l'enregistrement dans la base, et il te suffit d'exécuter le regsvr32 pour l'enregistrer de nouveau).
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 133 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
10
Date d'inscription
mercredi 3 mars 2010
Statut
Membre
Dernière intervention
31 mai 2010
3
Merci
j'ai executé regsvr32 pour l'enregistré à nouveau et toujours même probléme.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 133 internautes nous ont dit merci ce mois-ci

Commenter la réponse de berrabah1975
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
73
3
Merci
Salut,

Donc tu as du écraser l'ancienne version de ton ocx par un nouveau. Redéfinit la référence vers ton ocx dans ton projet l'utilisant, et n'oublie pas de le compiler en mode compatibilité binaire la prochaine fois.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 133 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
10
Date d'inscription
mercredi 3 mars 2010
Statut
Membre
Dernière intervention
31 mai 2010
3
Merci
le module est active x, je l'ai modifié et compilé j'ai même fait le teste et ça marche puis j'ai creé un nouveau ocx, et pour compilé l'application j'ai rajouté le nouveau ocx (projet-->composant)et ça marche pas.
j'ai essayé avec le regsvr32 et pareil ça marche pas toujours.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 133 internautes nous ont dit merci ce mois-ci

Commenter la réponse de berrabah1975
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
73
3
Merci
Salut,

ça marche pas toujours


Qu'est-ce qui ne marche pas ? Tu as essayé de supprimer l'ancienne dépendance vers ton composant, redémarrer vb, puis rajouter la dépendance vers le nouveau composant compilé ?
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 133 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
10
Date d'inscription
mercredi 3 mars 2010
Statut
Membre
Dernière intervention
31 mai 2010
3
Merci
j'ai regardé dans le dossier Systeme 32 c'est toujours l'ancien ocx qui existe, donc je dois le supprimer je suppose??

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 133 internautes nous ont dit merci ce mois-ci

Commenter la réponse de berrabah1975
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
73
3
Merci
Salut,

Non je te parle de la dépendance dans ton projet vb, pas du fichier ocx.

Un fichier ocx a un CLDIS unique qui permet de l'identifier dans le registre windows. Si tu le compile en mode compatibilité, il conserve son CLSID au fur et à mesure des versions, par contre, si tu le compile en mode sans compatibilité (c'est le choix par défaut de VB), et que tu écrase l'ancienne version de l'ocx, alors il reste une entrée dans le registre windows qui pointe sur rien (un CLSID avec aucun fichier rattaché).

Du coup, sous VB, tu as 2 composants : l'ancien qui pointe sur rien (et il est donc inutilisable) et le nouveau.

Ce que je te dis de faire, c'est d'enlever la référence vers l'ancien ocx dans ton projet VB, redémarrer VB pour être sûr qu'il le prenne en compte, puis sélectionner le nouveau composant, en théorie ca devrait le faire.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 133 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
10
Date d'inscription
mercredi 3 mars 2010
Statut
Membre
Dernière intervention
31 mai 2010
3
Merci
J'ai essayé de désinstaller toute l'application et la recompiler en suivant l'ordre des exe, maintenant j'ai ce message :

[b]Erreur d'execution '-2147467259(80004005):
[Microsoft][ODBC driver manager] data source name not found and no defaut driver specified/b

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 133 internautes nous ont dit merci ce mois-ci

Commenter la réponse de berrabah1975
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
73
3
Merci
Salut,

Là c'est un problème de driver à la base de données.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 133 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
10
Date d'inscription
mercredi 3 mars 2010
Statut
Membre
Dernière intervention
31 mai 2010
3
Merci
le probleme lié à la bd est reglé,
L'application se compose de trois Exécutables (Exe), huit contrôles ActiveX (Ocx) et d'une librairie (Dll). Ces modules sont compilés dans cet ordre :
Librairie (Libs\*.vbg)
Utilitaire (UtiSDA\*.vbg)
Fenêtres (Fen*\*.vbg)--------------------------------------------------(1)
Exécutables (App*\*.vbp)
(1) donc moi j'ai effectué une modification sur une fenetre (fenetre avtive x parmi les 8), j'ai creé un ocx que j'ai rajouté au projet, j'ai recompilé et ça marche toujours pas, j'ai même le controle de l'ocx modifié qui disparaiise de l'application.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 133 internautes nous ont dit merci ce mois-ci

Commenter la réponse de berrabah1975
Messages postés
1212
Date d'inscription
dimanche 20 avril 2003
Statut
Membre
Dernière intervention
4 juin 2016
8
3
Merci
Bonjour,

Le mieux est de procéder ainsi:

Compiler d'abord les OCX et DLL (le VBP de chacun) mais en faisant attention qu'il n'ait pas de groupe de projets ouverts (c'est très bien pour les tests mais pas pour la compil définitive).

Ensuite et seulement ensuite, tu compiles ton ou tes exécutables, toujours à partir du VBP en vérifiant auparavant les dépendances (en principe il gueule à la compil si quelque chose ne vas pas).


Calade

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 133 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Calade
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
73
0
Merci
Salut,

Et bien respecter le mode de compatibilité également...
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
Commenter la réponse de cs_DARKSIDIOUS