2011-01-06 1 views
1

J'utilise inno setup pour installer une application vb6 et des pilotes. Tout fonctionne correctement sur x86 et x64, mais à la fin de l'installation sur Windows 7, une boîte de dialogue Assistant Installation de pilote de périphérique s'affiche, indiquant: «Vous devez exécuter la version 64 bits de DPInst.exe sur cette machine. Contactez le fournisseur qui vous a fourni ce logiciel. J'utilise la version de DPInst.exe qui provient du kit de développement de pilotes Windows 7 et j'ai essayé de compiler le programme d'installation sur la machine Windows 7, mais j'ai reçu les mêmes résultats.Comment empêcher l'avertissement de l'assistant d'installation du pilote de périphérique à la fin de l'installation d'inno setup?

Quelqu'un peut-il s'il vous plaît signaler ce que je suis manquant?

Le script est assez grande, alors voici ce que je pense est le code approprié:

[Setup] 
ArchitecturesInstallIn64BitMode=x64 

[Run] 
Filename: {app}\DigidownHost.exe; Description: {cm:LaunchProgram,DigidownHost}; Flags: nowait postinstall skipifsilent 
Filename: {app}\Drivers\DPInst.exe; Description: {cm:LaunchProgram,DigidownHost}; Flags: skipifsilent waituntilterminated 

[Files] 
Source: TOBE Installed\DigidownHost.exe; DestDir: {app}; Flags: ignoreversion 

Source: TOBE Installed\XZip.dll;   DestDir: {sys};    Flags: regserver; Check: not Is64BitInstallMode 
Source: TOBE Installed\MSCOMM32.OCX;  DestDir: {sys};    Flags: regserver; Check: not Is64BitInstallMode 
Source: TOBE Installed\FTChipID.dll;  DestDir: {sys};         Check: not Is64BitInstallMode 
Source: TOBE Installed\ftd2xx.dll;  DestDir: {sys};         Check: not Is64BitInstallMode 

Source: TOBE Installed\XZip.dll;   DestDir: {syswow64};   Flags: regserver; Check: Is64BitInstallMode 
Source: TOBE Installed\MSCOMM32.OCX;  DestDir: {syswow64};   Flags: regserver; Check: Is64BitInstallMode 
Source: TOBE Installed\FTChipID.dll;  DestDir: {syswow64};        Check: Is64BitInstallMode 
Source: TOBE Installed\ftd2xx.dll;  DestDir: {syswow64};        Check: Is64BitInstallMode 

Source: TOBE Installed\Settings.ini;  DestDir: {app};    Flags: ignoreversion 
Source: TOBE Installed\Drivers\*.*;  DestDir: {app}\drivers;  Flags: ignoreversion deleteafterinstall 
Source: TOBE Installed\Drivers\amd64\*.*; DestDir: {app}\drivers\amd64; Flags: ignoreversion deleteafterinstall; Check: Is64BitInstallMode 
Source: TOBE Installed\Drivers\i386\*.*; DestDir: {app}\drivers\i386; Flags: ignoreversion deleteafterinstall; Check: not Is64BitInstallMode 
+0

Je suppose que vous installez le pilote en exécutant DPInst.exe à partir d'inno setup, obtenez-vous le même message si vous exécutez l'exe à partir de la ligne de commande sur cette machine? – jachguate

+0

J'ai essayé d'exécuter DPInst.exe à partir de l'invite de commande et j'ai reçu le même message. – sparkdino

+0

Si tel est le cas, ce problème n'est pas lié à l'installation d'Inno mais à DPInst.exe. Du point de vue d'inno, il suffit de fournir un DPInst.exe valide (un qui n'émet aucun avertissement sur le système cible). N'oubliez pas d'inclure le @jachguate dans vos commentaires si vous voulez que je le remarque à travers le système. – jachguate

Répondre

1

réponse Mise à jour: Il ressemble, en fonction de votre script, vous exécutez le même DPInst.exe fois à la fois 32 bits et 64 bits. Selon http://www.winvistatips.com/correct-version-dpinst-exe-use-windows-vista-32-64-bit-t438327.html, il existe différentes versions de DPInst.exe pour chaque plate-forme. Donc, votre script doit être quelque chose comme:

[Run] 
Filename: {app}\Drivers\x86\DPInst.exe; Description: {cm:LaunchProgram,DigidownHost}; Flags: skipifsilent waituntilterminated; Check: Not Is64BitInstallMode 
Filename: {app}\Drivers\amd64\DPInst.exe; Description: {cm:LaunchProgram,DigidownHost}; Flags: skipifsilent waituntilterminated; Check: Is64BitInstallMode 

Original Commentaire: Pouvez-vous poster votre script InnoSetup? Peut-il exécuter la commande deux fois accidentellement?
Etes-vous sûr qu'il exécute le bon DPInst.exe dans votre script?

+0

Cela ressemble à un commentaire à la question, pas comme une réponse valide. – jachguate

+0

Merci pour l'aide - ne pouvait pas voir le bois pour les arbres - Le problème était les deux versions apparemment identiques de DPInst (un semble fonctionner uniquement sur x86, mais l'autre ne semble fonctionner que sur x64 - je pensais qu'il était en arrière compatible - mon mauvais). – sparkdino

+0

Je suis content que vous l'ayez réussi. Microsoft semble aimer les mêmes noms de fichier pour différentes versions d'outils. – mirtheil

Questions connexes