cs_Le Pivert
Messages postés7903Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention11 mars 2024
-
23 août 2010 à 17:36
tangosierra
Messages postés5Date d'inscriptionmardi 28 novembre 2006StatutMembreDernière intervention20 août 2012
-
20 août 2012 à 11:52
Bonjour,
Je n'ai toujours pas trouvé le theme VBScript.
J'ait fait une application en VBS, où j'utilise cette ligne de code et cela fonctionne très bien sur mon PC.
Set objDlg = wscript.CreateObject("MSComDlg.CommonDialog")
Je viens de changer de PC en XP et Office 2003 comme l'autre. Et j'ai un message d'erreur sur cette ligne :
Impossible de créer l'objet "MSComDlg.CommonDialog"
Code: 80040112
Source:wscript.CreateObject
J'ai fait des recherches sur le net et me suis aperçu que je n'était pas le seul, mais je n'ai trouvé aucune solution.
J'ai vérifié la dll et l'ocx comdlg32 elle sont toutes les 2 présentes sur les 2 PC.
Faudrait-il une autorisation?
Je vous remercie de vos réponses.
lolokun
Messages postés1241Date d'inscriptionmardi 10 octobre 2006StatutMembreDernière intervention27 août 20137 24 août 2010 à 11:12
Ben en vbs tu ne peux cocher aucune référence..
il doit manquer une dll ou autre manquante, installé avec visual studio qui empêche le bon fonctionnement de l'appli..
Je n'avais pas fait attention que c'était le même site désolé, et l'astuce qui renvoie sur le site de bellamy ne fonctionne pas?
L'expérience, c'est une connerie par jour, mais jamais la même..
cs_Le Pivert
Messages postés7903Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention11 mars 2024137 23 sept. 2010 à 15:03
Après quelques jours de vacances, j'ai résolu le problème en téléchargeant VB2008 sur mon PC portable et cela fonctionne parfaitement.
Comme le disait si justement lolokun dans un précédent post il y a un fichier dans Visual studio (mais lequel?). J'espère que cela servira à d'autres
@+ Le Pivert
cs_Le Pivert
Messages postés7903Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention11 mars 2024137 23 août 2010 à 20:33
Merci de la réponse,
C'est enregistré, mais le problème persiste. En consultant le Net, je me suis aperçu que c'est un sujet récurrent. Car c'est la création de l'objet qui n'est pas accepté.
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_Le Pivert
Messages postés7903Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention11 mars 2024137 23 août 2010 à 22:34
Merci de te pencher sur mon problème
J'ai trouvé sur ce site la vrai question que je me pose et à laquelle je ne trouve pas de solution:
Pourquoi cela ne marche pas d'un PC à l'autre étant équipé de la même manière.
cs_Le Pivert
Messages postés7903Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention11 mars 2024137 24 août 2010 à 11:08
Merci lolokun,
Le site que tu m'indiques est le même que j'ai cité plus haut et explique bien le problème qui date d'un certain temps mais ne le résout pas.Moi aussi j'ai 2 PC XP sp3 , cela fonctione sur l'un mais pas sur l'autre, c'est ce que je voudrais que l'on m'explique?
En VBS y-a-t-il de Réferences à cocher comme en VBA?
Je n'ai rien trouvé de tel sur Microsoft Script Editor
cs_Le Pivert
Messages postés7903Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention11 mars 2024137 24 août 2010 à 13:58
J'ai essayé de cette façon:
Set objDlg = wscript.CreateObject("SAFRCFileDlg.FileOpen")
Je n'ai plus de message d'erreur, mais cela n'ouvre pas la boite de dialogue. Sur le 2 ème PC je n'ai pas Visual Studio, mais je ne pense pas que cela marche ensemble, c'est plutôt avec Excel que l'on utilise VBS.
lolokun
Messages postés1241Date d'inscriptionmardi 10 octobre 2006StatutMembreDernière intervention27 août 20137 24 août 2010 à 14:20
Hmm ben mon pc de boulot avec xp SP3, excel 2003 pas de souci.
Un pc portable xp SP2, excel 2007 j'ai le problème..
Cependant la version de la dll comdlg32 a l'air identique (6.0.2900) dans le répertoire System32..
Par contre je ne peux pas effecuter l'enregistrement avec le regsvr32, message d'erreur..
Par contre le comdlg32.ocx est moins gros...
Un nouveau lien peut-être essaye avec un des 2 liens proposé pour le téléchargement de cette dll:
ici
L'expérience, c'est une connerie par jour, mais jamais la même..
cs_Le Pivert
Messages postés7903Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention11 mars 2024137 24 août 2010 à 15:23
j'ai suivi le lien et téléchargé, enregistré l'OCX,rien ni fait. J'ai comparé les DLL et OCX, ce sont les mêmes avec les mêmes références. Moi aussi c'est un portable où cela ne fonctionne pas, mais c'est le même système d'exploitation. Il y a réellement un problème. Ce n'est pas grave, c'était juste pour connaitre la cause de ce disfonctionnement.
Pour ce qui est de l'enrgistrement des DLL, sur les 2 machines il y a un message d'erreur, donc cela doit-être normal.
@+
cs_Le Pivert
Messages postés7903Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention11 mars 2024137 25 août 2010 à 17:36
Après des recherches, il faut une licence d'utilisation sur certaines machines. J'ai trouvé sur ce site de quoi contourner le problème.
http://www.ericphelps.com/scripting/samples/ Il faut lire la partie "SERIAL" MsCOmm32 qui renvoie à la méthode SFX
Qui explique qu'il faut encapsuler l'OCX.
Faire un fichier auto-extractible VBS
Par contre je ne sais pas la façon d'encapsuler l'OCX.
Si vous pouviez m'aider?
Merci
cs_Le Pivert
Messages postés7903Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention11 mars 2024137 25 août 2010 à 20:38
Je ne comprends pas ce que je doit faire. Il y a juste une page avec au coin haut gauche:
COM PORT et des optionButton et ensuite Settings et un N° avec Setup et en dessous Send
cs_Le Pivert
Messages postés7903Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention11 mars 2024137 26 août 2010 à 11:02
Merci ghuysmans99, bien reçu, je vais l'étudier. Mais pour ouvrir une boite de dialogue, le code a l'air bien complexe, je pense qu'il vaut mieux se tourner vers une autre façon de procéder.
@+
tangosierra
Messages postés5Date d'inscriptionmardi 28 novembre 2006StatutMembreDernière intervention20 août 2012 6 août 2012 à 11:58
Même problème que souligné par le premier posteur. Cela fonctionnait sous ma machine de dev en XP SP3 et pas sur mon laptop aussi en XP-SP3. J'ai installé vb5ccein.exe sur mon laptop et maintenant, FileOpen marche. Si cela peut en aider certains. Moi non plus en ce mois d'août 2012 je n'avais trouvé aucune solution sur le net. Pour plus d'info voir : http://jc.bellamy.free.fr/fr/vbsgeneralites.html
Les contrôles VB6 ne peuvent pas, de par la volonté de Microsoft, être utilisés sur un programme qui n'a pas été au préalable compilé par VB6 avec le contrôle intégré au programme. Quand le contrôle n'est pas intégré au programme, il faut que VB6 soit installé sur la machine. C'est (c'était) pour protéger l'investissement des acheteurs de VB6.
En principe, on peut utiliser les boîtes de dialogues de Windows en passant par l'API de Windows.