Install programme VB... Marche pô [Inno Setup] - Shell/Batch - Programmation
Marsh Posté le 03-05-2004 à 16:59:36
j'ai presque tout mis en commentaire et ça à l'air de marcher
bon, je reviens si ça continue à merde, je fais des tests sur les machines utilisateurs
Marsh Posté le 03-05-2004 à 17:12:50
regserver ça se fait sur des composants COM.
Donc déjà pas sur les dll genre MSVCRT.DLL.
Après sir tu mets en comment ça va avoir l'air de marcher oui...
Si le mec il a pas VB sur ça bécanne, ça av surement être autre chose.
Marsh Posté le 03-05-2004 à 17:36:13
les deux fichiers OCX devraient toutefois garder leur attribut regserver. Pour le reste, je ne sais pas. Suffit de faire un regsrv manuel sur chaque fichier pour en être sûr (méthode bourrin ) Si ça te répond "Entry point was not found", ce n'est pas du COM et il ne faut pas d'attribut regserver.
Marsh Posté le 04-05-2004 à 11:07:27
Du nouveau.
Les trucs que j'ai mis en commentaire sont pas gênant, à priori c'est des dll de debug de VB, ou des messages en Français (m'en fout c'est une appli internationnale, donc EN-US uniquement)
Par contre, ça plante toujours sur MSXML3.DLL
Et ça par contre ça pose problème (très grave problème même) puisque le programme ne peut pas démarrer sans cette DLL.
Comment faire pour la distribuer ?
Sur la page de dwl chez MS, il y a un fichier mms ou mss je sais plus quoi, qui est prévu pour "être déployé avec votre application". J'en déduis ce que je pensais déjà mais qu'on m'avait infirmé, que MSXML ne peut être distribué en petits bout, et nécessite une install à part entière.
Comment intégrer de programme à InnoSetup ? J'ai pas bien compris comment faire dans la doc
Marsh Posté le 04-05-2004 à 11:09:14
Voilà, c'est là :
http://www.microsoft.com/downloads [...] layLang=en
Citation : Use msxml3msms.exe to download the redistributable merge modules (*.msm) to distribute with your application setup. |
Marsh Posté le 04-05-2004 à 11:09:20
aaaaaah la MSXML3.DLL n'est distribuée qu'avec IE. Donc la logique voudrait que tu installes la dernière version d'IE avant ton application, car elle repose sans doute (je dirais même certainement) sur d'autres compos d'IE, ce qui expliquerait ton problème.
Marsh Posté le 04-05-2004 à 11:10:41
drasche a écrit : aaaaaah la MSXML3.DLL n'est distribuée qu'avec IE. Donc la logique voudrait que tu installes la dernière version d'IE avant ton application, car elle repose sans doute (je dirais même certainement) sur d'autres compos d'IE, ce qui expliquerait ton problème. |
Impossible de mettre à jour IE, il s'agit de IE 5.5 SP2, c'est décidé niveau corporate, et il est impossible de le mettre à jour (j'ai essayé un coup, 5 minutes après, mon PC reboot, j'ai ghost qui démarre et qui restore le master corporate - super j'ai perdu tous mes documents -)
Marsh Posté le 04-05-2004 à 11:11:13
Je crois que c'est pour faire des msi ton merge module.
"ça plante" : c'est le regserver qui plante ? M'étonnerais pas sur le parser dll.
Vire regserver et test à nvx.
Marsh Posté le 04-05-2004 à 11:12:06
-- Edit : tiens ma machine de test c'est un SP1
M'enfin c'est un serveur, c'est peut-être pour ça qu'il se remasterise pas tout seul ^^
En tout cas, pour le déploiement final, j'ai pas le choix, faut pas que je touche à IE
Marsh Posté le 04-05-2004 à 11:13:18
HelloWorld a écrit : Je crois que c'est pour faire des msi ton merge module. |
J'essaie (mais j'en doute) car il copie le fichier avant de faire le regserver, et la présence de la DLL ne suffit pas...
Marsh Posté le 04-05-2004 à 11:15:50
je vais tâcher de retrouver un mail... j'ai dû faire une intervention un jour sur le portable d'un client, il lui manquait MSXML3.DLL il me semble, et j'ai bricolé comme j'ai pu (me rappelle plus des détails ) pour le lui installer avec les dépendances pour arriver à activer une fonctionnalité de notre application.
Marsh Posté le 04-05-2004 à 11:19:57
j'ai retrouvé le mail: en plus de MSXML3.DLL, il a fallu que j'installe MSXML3A.DLL et MSXML3R.DLL (ces deux dernières ne sont pas des DLLs ActiveX donc par de regserver pour celles-là). MSXML3.DLL est une DLL ActiveX, il faut donc un attribut regserver.
Ne perd pas de vue qu'il s'agit de composants systèmes et que tu as intérêt à tester à fond ton déploiement + les applis existantes sur la machine pour vérifier qu'il n'y a pas de problème.
Marsh Posté le 04-05-2004 à 12:06:34
Bon, ben ça marche !
Merci
Reste plus qu'à tester sur un panel de PC utilisateurs...
Marsh Posté le 05-08-2004 à 11:41:14
Bonjour,
voila j'ai le meme probleme avec la dll msxml3.dll.
J'ai donc recuperer les dll en question (a et r) mais cela ne change rien.
Je developpe sur un XP et l'Os sur lequel cela ne focntionne pas est un NT4.
L'erreur que vb me retourne est 429: le composant activex ne peut créer l'objet. Il semble que je ne puisse pas enregistré la dll sous NT4 car apres recherche dans le registre, installation de msxml3.msi, IE5.5 et un essai d'enregistrement via regsvr32 a la main ... rien a faire
quelqu'un aurait il une idée, merci.
Marsh Posté le 03-05-2004 à 16:53:18
J'ai fait un programme VB6.
J'ai créé un script Inno Setup pour installer la bestiolle chez les utilisateurs.
Et ça merde.
J'ai systématiquement un message comme quoi il est impossible d'enregistrer la DLL sur la machine (pour chaque DLL)... Il vient d'où ce problème ?
Ci-dessous mon script :
(en commentaire l'endroit où ça merde)
Il en résulte que le programme une fois installé ne fonctionne pas
Programme fait en VB6 FR SP5
Doit tourner sur des Windows 2000 Pro US SP4 principalement (et quelques Win98US)