2016-12-16 1 views
1

Je cherche un moyen de fournir un installateur signé InstallShield personnalisé qui peut avoir une petite information injectée sans altérer la signature ou avoir à signer à nouveau le programme d'installation ?InstallShield installateur avec ID personnalisé sans invalider la signature

L'utilisateur le téléchargera de mon site Web, mais il a besoin d'un ID personnalisé injecté spécifiquement pour cet utilisateur. J'ai vu des références aux fichiers sidecar, mais je ne trouve aucune documentation.

Alors, est-il possible d'injecter ces données dans l'installateur sans invalider la signature?

+0

Donc un peu plus d'informations, avez-vous essayé de le faire en utilisant [Orca] (https://msdn.microsoft.com/en-us/library/windows/desktop/aa370557 (v = vs.85) .aspx) ou est-ce la question? Orca est un éditeur de table de base de données permettant de créer et de modifier des modules Windows Installer et des modules de fusion. C'est un MSI dont nous parlons ouais? Une autre façon de voir cela est d'utiliser WiX Bootstrapper pour intégrer votre exécutable InstallShield existant. –

+0

@JeremyThompson Je n'étais pas au courant d'Orca, je vais jeter un coup d'oeil. C'est probablement un MSI, bien que je puisse faire un EXE si cela m'a permis d'ajouter l'ID. Peut-il modifier la base de données après la signature du fichier MSI, sans qu'il soit nécessaire de le signer à nouveau? Je vais aussi fouiner à WiX. Merci! – tghw

+0

Voir aussi http://stackoverflow.com/questions/23806564/how-to-create-precofigured-installer-msi-or-exe-with-valid-signature/23980946 –

Répondre

-1

Cette question et les commentaires à ce jour manque une mise en garde importante: Toute modification d'un fichier MSI ou EXE que ce soit provoquera la signature de code signature est invalide (à moins que le fichier résultant a le même hachage exact du fichier, ce qui est extrêmement improbable).

Y a-t-il une raison pour laquelle vous ne pouvez pas signer le package principal? Notez que vous pouvez écrire un script powershell ou batch pour signer un EXE rapidement et facilement en utilisant signtool. Vous pouvez ajouter vos données personnalisées et démissionner du package en une seule étape. Vous pouvez même utiliser un certificat de signature de code différent pour MSM et EXE si nécessaire.

Vous pouvez accomplir quelque chose de très similaire en utilisant un module de fusion pré-signé (MSM) - Créez votre programme d'installation principal en tant que module de fusion signé. Ensuite, incluez votre MSM déjà signé dans un package EXE d'installation non signé et ajoutez vos données personnalisées au programme d'installation EXE parent. Les données personnalisées peuvent être ajoutées de différentes manières, telles qu'un fichier texte dans un composant, incorporées dans une action personnalisée ou en tant que fichier de support dans InstallShield. Malheureusement, cela signifie que votre programme d'installation principal EXE est non signé, ce qui n'est PAS recommandé.