cs_rbn
Messages postés18Date d'inscriptionjeudi 1 mai 2008StatutMembreDernière intervention 5 novembre 2010
-
8 mars 2010 à 22:00
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 2018
-
9 mars 2010 à 20:59
Bonjour ;
Je viens de créer mes premiers contrôles activeX et souhaiterais connaître comment mettre à jour la liste des contrôles supplémentaires sous Excel VBA lorsque l'on a supprimé un de ces controles activeX. En effet, le fait de supprimer le fichier correspondant (fichier .ocx) ne supprime pas automatiquement ce contrôle de la liste des contrôles supplémentaires sous Excel VBA, ce qui me semble pourtant être le cas lorsque l'on désinstalle un contrôle activeX via une commande Regsvr32 /u c:\WINNT\system32\..... .ocx (pour un controle active X ayant été installé via une commande Regsvr32 c:\WINNT\system32\..... .ocx
Merci par avance pour votre aide
A voir également:
Différence entre controle de formulaire et activex
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 9 mars 2010 à 00:24
Salut
A mon avis, si le contrôle est dans la liste, c'est que le fichier associé existe toujours.
As-tu essayé de sélectionné l'ActiveX en question ? Y a t-il une erreur disant que le fichier n'existe pas ? L'activeX fonctionne t-il comme si de rien n'était ?
Vérifie à quel emplacement tu as mis le fichier, qu'il n'existerait pas un jumeau sur le répertoire stantard, C:\Windows\System32 (sous XP)
Enfin, après un reboot de la machine, apparait-il encore dans la liste ?
A quel emplacement as-tu généré (compilé) le composant ? sur le répertoire de ton application ou directement sous System32 ? Je n'en ai plus le souvenir, mais il y a de fortes chance que la version utilisée ("registrée") soit celle du répertoire de ton appli.
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_rbn
Messages postés18Date d'inscriptionjeudi 1 mai 2008StatutMembreDernière intervention 5 novembre 2010 9 mars 2010 à 08:55
Bonjour ;
Merci pour avoir répondu aussi vite.
En fait il ne s'agit que de la liste des contrôles supplémentaires qui ne se met pas à jour lorsque je supprime le fichier .ocx ; comme le contrôle activeX reste dans la liste, je peux toujours demander de l'installer sur la boite à outils et dans ce cas il m'indique "Inconnu" et si j'essaie de mettre ce contrôle sur un userform alors j'ai le message "classe non enregistrée", ce qui est normal.
Le problème concerne donc uniquement la mise à jour de la liste (suppression d'un contrôle n'existant plus), je suppose qu'il doit y avoir qlq part un fichier ou ??? qui gère cette liste de contrôles supplémentaires
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 9 mars 2010 à 15:05
Ok
A mon avis toujours, cette liste vient de la base de registres (BdR).
Donc, si tu as supprimé un OCX sans l'avoir UnRegistrerisé, il reste déclaré dans la BdR.
Il suffit peut-être de faire un coup de ménage dans la BdR :
- Certains utilitaires font ça bien, ou
- fais une sauvegarde de ta BdR (Export) puis fais une recherche dans la BdR du nom de ton composant fantôme et détruit les clés - Méfie-toi quand même.
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_rbn
Messages postés18Date d'inscriptionjeudi 1 mai 2008StatutMembreDernière intervention 5 novembre 2010 9 mars 2010 à 17:48
Merci pour vos réponses ;
J'ai remis le fichier .ocx en lieu et place et ai exécuté la commande suivante
regsvr32 C:\Program Files\MicrosoftVisual Studio\VB98\CB_rbn\CB_Test.ocx /u
et j'ai obtenu le message suivant : Load library("C:\Program") à échoué - Le module spécifié est introuvable
Il y aurait il une erreur dans la commande exécuter ?
cs_rbn
Messages postés18Date d'inscriptionjeudi 1 mai 2008StatutMembreDernière intervention 5 novembre 2010 9 mars 2010 à 18:24
C'est OK, merci pour votre aide
Juste pour clore le sujet installer/désinstaller un controle activeX, la commande d'installe (que je n'ai pas à exécuter suite à la création via VB6.0, mais qui sert lors d'installation de controles activeX existants) est sur la même base, c'est à dire ?