Mew27
Messages postés44Date d'inscriptionmercredi 7 avril 2004StatutMembreDernière intervention23 février 2008
-
18 janv. 2007 à 15:27
Mew27
Messages postés44Date d'inscriptionmercredi 7 avril 2004StatutMembreDernière intervention23 février 2008
-
18 janv. 2007 à 18:53
Est-ce qu'il y a moyen d'enlever les entrées doubles dans la liste des composantes ? Je crois que c'est parce que j'ai enregistré plusieurs versions différentes, car les entrées sont double mais sont du même dossier et du même fichier ocx. J'ai essayé de les dés-enregistrer mais il n'en enlève qu'un, l'autre version du fichier je ne l'ai plus je ne peux donc pas le dés-enregistrer.
J'ai tenté de faire une recherche dans le registre, j'ai enlevé ce que j'y ait trouvé comme référence, mais c'est toujours là.
Pourtant j'utilise la comptatibilité binaire.
La dessus je me demandais si ça a une importance de ou on enregistre le fichier ? car quand je distribue mon application si les fichiers sont dans le même répertoire que le exe, est-ce que tout les pc doivent enregistrer les dll et ocx si le exe est dans un dossier partagé en réseau ? Tout les postes ont simplement un raccourcis vers le même exe partagé.
Je me demandais la même chose pour les dll de vb comme vb6fr par exemple.
Dans le fond, le fait d'enregistrer une dll ou ocx ça ne fait que l'ajouter dans la liste pour l'utiliser dans l'IDE ?
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 18 janv. 2007 à 18:30
Salut
Hélas, si tu as supprimé les premières versions, impossible de supprimer leurs références dans la BdR autrement qu'à la main. Eventuelklement, essaye de la dé-enregistrer plusieurs fois de suite (à condition que le fichiuer soit bien sur le même répertoire que celui utilisé lors de l'enregistrement)
Hélas encore une fois, un nettoyeur de base de registres ne trouvera rien puisque le fichier porte le même nom et sera donc 'valable' pour le nettoyeur, à moins que celui-ci vérifie la version enregistrée (je ne sais même pas si la BdR mémorise la version).
Il faut donc toujours penser à dé-enregistrer une DLL avant d'en supprimer le fichier.
Le problème d'installer les DLL sur le même répertoire que l'EXE au lieu du %Win%/System32 :
Si tu enregistres une DLL et qu'une DLL identique existe ailleurs sur la machine, tous les appels à cette DLL seront redirigés vers la tienne. Donc, si tu la supprimes, les autres logiciels risquent de bugger.
Il ne faut utiliser cette technique que lorsque tu utilises une DLL faite maison et qui ne sera utilisée que par un (groupe de) programme(s) maison. Là, c'est toi qui gère.
Malgré tout, je te conseille vivement d'utiliser le répertoire standard System32.
Nota : quand je parle de DLL, c'est aussi valable pour les OCX.
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_Exploreur
Messages postés4821Date d'inscriptionlundi 11 novembre 2002StatutMembreDernière intervention15 novembre 201615 18 janv. 2007 à 18:39
Bonjour Jack,
La mémorisation des ocx/dll dans la fenêtre composant/référence, ne sont pas inscrit en dur dans les fichiers de VB? Simple question.
A+
Exploreur
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 18 janv. 2007 à 18:46
Je suis d'accord avec toi Jack, mais je précise quand même qu'il s'agit des dll activex.
Les dll api "ou dll classique", n'ayant généralement pas besoin d'etre enregistrées dans la base de registre. Sauf si elles peuvent fonctionnée de manière autonome, comme les services par exemples.
---- Sevyc64 (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
Vous n’avez pas trouvé la réponse que vous recherchez ?
Mew27
Messages postés44Date d'inscriptionmercredi 7 avril 2004StatutMembreDernière intervention23 février 2008 18 janv. 2007 à 18:53
Pourtant j'ai mit tout les fichiers dans le même répertoire et quelques fois un pc client dit qu'il ne peut créer l'objet et ils sont pourtant tous dans le même répertoire que l'exe.