VB pb de composant active X - VB/VBA/VBS - Programmation
Marsh Posté le 20-09-2007 à 22:47:42
Dans ton projet sous VB6, fais la liste des références et composants utilisés (menu projet), note les fichiers référencés pour chaque case cochée, et assure-toi que c'est ajouté dans ton paquetage, à l'exception du runtime qui est automatiquement ajouté (crée un projet par défaut et regarde les références, tu sauras tout de suite, il y a normalement 4 cases cochées).
Sinon ajoute un peu de code pour identifier quelle est la classe que ton logiciel n'arrive pas à instancier, ça te donnerait une indication de ce qui manque.
Marsh Posté le 20-09-2007 à 23:05:50
merci drasche mais j'avais penser à ça
j'ai vérifier ttes les références tout y est et j'ai vérifier aussi les référence dans system32 elles y sont toutes
mais ça n'a pas marché
Marsh Posté le 20-09-2007 à 23:28:13
Dans ce cas, admettons que tu as toutes les dépendances requises et qu'il n'y a pas de problème à ce niveau. Le problème serait alors pendant la création d'un objet. Un plantage interne peut faire échouer une instanciation.
Là encore, je ne peux que te recommander de bien intercepter un maximum d'erreurs et de les remballer en log ou visuellement avec les détails.
Idéalement, dans tous les évènements visuels ou déclenchés par le système...
Marsh Posté le 20-09-2007 à 23:41:09
ok
je testerai cela et je tiendrai au courant
merci bonne nuit
Marsh Posté le 21-09-2007 à 10:44:17
hello je donne ma solution au cas ça arriverait à d'autres
j'ai fait un truc à la barbare
j'ai inclut tous les .OCX qui sont présents dans le system 32 de ma machine mais pas dans celui du pc de destination
et ça a marché
après j'ai supprimé un à un chaque ocx pour repérer celui qui manquait mais mon logiciel à continuer de marcher c' louche
c'est demi réponse mais voilà
@ plita
Marsh Posté le 21-09-2007 à 20:12:24
C'est effectivement barbare mais le résultat ne peut qu'être bon
Marsh Posté le 22-09-2007 à 00:05:41
La technique de Drasche qui consiste à lister les références de ton projet a un inconvénient : certains composants n'y sont pas listés (références indirectes, composants .OCX ajoutés via barre d'outils, ...).
Il vaut mieux passer par le complément « Assistant Empaquetage et déploiement » de VB6 pour établir une liste (plus) complète, voire constituer le kit d'installation de ton programme.
Marsh Posté le 22-09-2007 à 00:24:42
Oui, c'est vrai, c'est le late-binding et bien que je l'emploie au boulot, je n'y fais même plus attention. Ca a ses avantages mais si on emploie intensivement un composant externe, mieux vaut s'orienter vers de l'early binding, et avoir une référence bien claire bien nette dans le projet.
Pour plus de détails, on en parle ici:
http://forum.hardware.fr/hfr/Progr [...] tm#t341298
Marsh Posté le 20-09-2007 à 22:37:12
Hello à tous
J'ai développer un petit logiciel sous VB6 et je l'ai empaqueté avec Inno Setup
Le probleme est que quand je l'installe sur une machine qui n'a pas l'EDI visual studio
il me met une erreur de type "le composant active X ne peut créer l'objet"
Alors je vois quel pas référence OCX je peut rajouter à mon setup pour que ça marche
sur n'importe quel machine
Connaitriez vous des solutions pour verifier les références qui pourrait manquer sur les autres machines ???
ou avez dejà eu ce pb ???
je sais pas quoi faire et le logiciel est à livrer pour demain soir ....pfff
i need u help please
Merci d'avance
---------------
Né de la bêtise des hommes et de la haine du genre ....