Comment faire un dialogue personnalisé dans InstallShield?
J'essaie de comprendre InstallShield (2009)/InstallScript à la volée, parce que je suis la modification de quelqu'un d'autre script d'installation.
L'une des boîtes de dialogue lors de la procédure d'installation, auparavant, avait une zone de texte sur elle, lui demandant une instance de SQL Server, en supposant un certain nom de base de données. Maintenant, je viens de terminer un accessoire vous permettant de choisir n'importe quel nom de base de données, et pas seulement la valeur par défaut, et j'ai besoin d'ajouter un champ à cette boîte de dialogue permet à l'utilisateur d'entrer le choisi DB nom. Monkey see, Monkey do, il suffit de faire un nouveau contrôle et de les dupliquer et de les adapter quelle que soit la fonctionnalité de la forme a eu pour la première zone de texte - assez facile, non?
Euh... problème ici. Il semble que le "SdShowDlgEdit1" forme générique est une chose qui est expédié avec InstallShield, et est utilisé partout, partout où vous avez une boîte de dialogue qui a besoin d'une zone de texte. Changement de forme, et il change de partout qu'on l'appelle... alors maintenant, j'ai une fausse 2ème zone de texte apparaissant partout mon installation partout où il y a une seule zone de texte avant.
Oups. Annuler les modifications, et de modifier la référence à "SdShowDlgEdit2", qui est - vous l'aurez deviné - InstallShield du formulaire standard pour les dialogues besoin de 2 zones de texte. Maintenant, ce serait génial.... sauf que le développeur précédent suis là, devant moi et a ajouté un bouton "parcourir" pour que dans un endroit où il avait besoin de la 2e zone de texte pour contenir un chemin d'accès au dossier. Je ne veux pas que le bouton "parcourir", et je ne peux pas le supprimer.
Donc, je pense, pourquoi n'ai-je pas créer un formulaire personnalisé de mon propre, et de ne pas obtenir en vertu de quelqu'un d'autre orteils? J'ai donc cloner le formulaire, renommez la nouvelle instance de "EnterDbDetails", supprimer le bouton "Parcourir" et de rendre le formulaire de regarder juste à droite.
Puis je retourne dans la InstallScript pour rediriger vers "EnterDbDetails" et de découvrir que la EzDefineDialog
fonction m'oblige à passer dans le "Resource ID" de la forme. Maintenant ce qui était nouveau... 12018... grande... remplissez tous les détails nécessaires, compiler, construire, et de lui donner un tourbillon. Semble beau, toutes les bonnes valeurs par défaut sont remplis dans les deux zones de texte - mais hey! Pourquoi le bouton parcourir? Et pourquoi le texte sur les étiquettes pas ce que j'ai mis?
Retour à InstallScript, vérifiez l'ID de la Ressource s'avère que l'original "SdShowDlgEdit2" a aussi un ID de Ressource de 12018. Eh bien, qui explique que bien. Idiot que InstallShield vous permet d'avoir deux formes avec le même ID, mais peu importe... Donc, revenons à mon "EnterDbDetails" forme et de modifier l'ID...
... mais l'Identificateur de Ressource de propriété est en lecture seule! WTF?
Alors maintenant, je ne peux pas utiliser les formulaires standard, et je ne peux pas utiliser un formulaire personnalisé, car il ne me permet pas de changer l'ID de la ressource.
Je suis perplexe. Quelqu'un peut-il expliquer comment vous êtes censé faire quelque chose de ce genre, qui devrait être la chose la plus simple du monde?
OriginalL'auteur Shaul Behr | 2012-03-01
Vous devez vous connecter pour publier un commentaire.
La création de Nouvelles boîtes de dialogue Personnalisées dans InstallScript et InstallScript MSI Projets
Citation du site (édition 2015) :
Pour créer un dialogue personnalisé, vous devez effectuer les étapes générales suivantes:
Cette réponse est sensible à la pourriture des liens.
OriginalL'auteur Christopher Painter
Pour créer une nouvelle boîte de dialogue:
Ouvrir les boîtes de dialogue en vue. Les boîtes de dialogue view est situé dans la section Interface Utilisateur de la Liste d'Affichage.
Cliquez-droit sur le Toutes les boîtes de dialogue de l'explorateur, puis cliquez sur Nouvelle boîte de Dialogue. La boîte de Dialogue de l'Assistant s'ouvre. Cliquez sur Suivant pour rejeter le panneau d'Accueil.
Dans le Modèle de boîte de Dialogue du panneau, cliquez sur l'Intérieur de l'Assistant Panneau de configuration et sélectionnez l'Permettez-moi cette boîte de dialogue insérer dans une Interface Utilisateur de la séquence de case à cocher.
Dans l'Interface Utilisateur du panneau, sélectionnez Installation de l'Interface Utilisateur de la liste des séquences. Dans la liste des boîtes de dialogue, sélectionnez InstallWelcome. Sur la base de ces sélections, InstallShield, insérez votre nouvelle boîte de dialogue dans la séquence qui suit immédiatement la InstallWelcome boîte de dialogue.
Dans la boîte de Dialogue Position et l'État du panneau, laissez les paramètres par défaut, puis cliquez sur Terminer. Votre nouvelle boîte de dialogue apparaît dans la liste des boîtes de dialogue.
Cliquez-droit sur la boîte de dialogue et sélectionnez Renommer. Renommer la boîte de dialogue WelcomeBitmap.
En utilisant la même technique, vous pouvez insérer des boîtes de dialogue supplémentaires dans votre installation de l'interface utilisateur.
Dans cette étape, vous allez modifier le WelcomeBitmap boîte de dialogue que vous venez de créer:
Tout d'abord, créer une image bitmap (à l'aide d'un programme comme Microsoft Paint) que les mesures de 300 150.
Ouvrir les boîtes de dialogue en vue.
Développez le WelcomeBitmap de la boîte de dialogue nœud. Cliquez sur anglais (États-unis) pour ouvrir la boîte de Dialogue de l'Éditeur.
Cliquez sur la boîte de Dialogue Titre en caractères Gras de la zone de texte en haut de la boîte de dialogue. Dans le champ de Texte, tapez la Bienvenue Bitmap. Cela change la boîte de dialogue principale du titre.
Cliquez sur la boîte de Dialogue Normal Description de la zone de texte en haut de la boîte de dialogue. Dans le champ de Texte, tapez Affiche mon message d'accueil bitmap. Cela change la boîte de dialogue de description.
Cliquez sur le bouton Bitmap dans la boîte de Dialogue barre d'outils de Contrôle et utilisez le curseur pour faire glisser une boîte dans la boîte de dialogue. Réglez la Hauteur 150 et la Largeur de 300.
Dans le champ Fichier de parcourir le fichier bitmap que vous avez créé à l'étape 1.
Après la reconstruction du projet (en appuyant sur F7) et en cours d'exécution (en appuyant sur CTRL+F5), l'Accueil Bitmap boîte de dialogue apparaît, après l'Install de la boîte de dialogue de Bienvenue.
OriginalL'auteur rightcodeatrighttime
Vous avez besoin de modifier le ResourceID (à quelque chose d'unique) dans la boîte de Dialogue table qui se trouve dans la Directe de l'Éditeur dans la section Outils du Concepteur de l'Installation.
OriginalL'auteur Markh
Par custimizing standard InstallShield boîtes de dialogue, comme sdWelcome, sdFinish et sdFinishReboot vous serez en mesure d'utiliser les boîtes de dialogue de script par défaut Api avec la personnalisation du
OriginalL'auteur singidunumx