Le fichier d'installation de l'application est généré à l'aide de WiX. Dans la configuration WiX, j'associe un type de fichier qui fonctionne avec l'application. Comment puis-je associer une icône avec ce type de fichier dans la configuration WiX?Comment puis-je définir une icône pour un fichier associent en utilisant WiX?
Répondre
Voici comment je l'ai fait. Je déclarai:
<Icon Id="Icon.exe" SourceFile="..\Installer\Graph.ico" />
avant </Product>
et ajouté comme référence comme suit:
<ProgId Id='myApp.exe' Description='Some description' Advertise='yes' Icon='Icon.exe'>
<Extension Id='xyz' ContentType='application/text'>
<Verb Id='open' Sequence='10' Command='Open' Argument='"%1"' />
</Extension>
</ProgId>
DE: http://www.tramontana.co.hu/wix/lesson1.php#1.7
Si votre application gère son propre type de données de fichiers, vous devez vous inscrire une association de fichier pour elle. Mettez un ProgId dans votre composant. FileId doit se référer à l'attribut Id de l'élément File décrivant le fichier destiné à gérer les fichiers de cette extension. Notez le point d'exclamation: il retourne le chemin court du fichier au lieu de la longue:
<ProgId Id='AcmeFoobar.xyzfile' Description='Acme Foobar data file'>
<Extension Id='xyz' ContentType='application/xyz'>
<Verb Id='open' Sequence='10' Command='Open' Target='[!FileId]' Argument='"%1"' />
</Extension>
</ProgId>
Pour attribuer une icône à ce type de fichier, vous devez spécifier le registre approprié vous entrées dans votre composant:
<Registry Id='FooIcon1' Root='HKCR' Key='.xyz' Action='write'
Type='string' Value='AcmeFoobar.xyzfile' />
<Registry Id='FooIcon2' Root='HKCR' Key='AcmeFoobar.xyzfile' Action='write'
Type='string' Value='Acme Foobar data file' />
<Registry Id='FooIcon3' Root='HKCR' Key='AcmeFoobar.xyzfile\DefaultIcon' Action='write'
Type='string' Value='[INSTALLDIR]Foobar.exe,1' />
Je vous recommande la suite de ma pile poste de débordement situé here de la façon la plus simple et la plus élégante d'icônes intégration dans une ressource sans avoir besoin d'un projet C++ dans une application .NET gérée.
Ensuite, voici la bonne façon de régler ce via Wix:
<Component Id="stackoverflowFileRegistration" Guid="MY_GUID">
<RegistryKey Root="HKCR" Key=".stackoverflow" ForceCreateOnInstall="yes" ForceDeleteOnUninstall="yes">
<RegistryValue Value="stackoverflow.Document" Type="string" KeyPath="yes" />
<RegistryValue Name="Content Type" Value="application/stackoverflow" Type="string" />
<RegistryKey Key="ShellNew" ForceCreateOnInstall="yes" ForceDeleteOnUninstall="yes">
<RegistryValue Name="NullFile" Value="" Type="string" />
<RegistryValue Name="Data" Value="Default new document Content.. NOTE: you must use a MutiStringValue nodes for multi-line content...." Type="string"/>
</RegistryKey>
</RegistryKey>
<RegistryKey Root="HKCR" Key="stackoverflow.Document" ForceCreateOnInstall="yes" ForceDeleteOnUninstall="yes">
<RegistryValue Value="stackoverflow Document" Type="string" />
<RegistryKey Key="DefaultIcon" ForceCreateOnInstall="yes" ForceDeleteOnUninstall="yes">
<RegistryValue Value="[INSTALLDIR]bin\stackoverflow.lib.dll, 1" Type="string" />
</RegistryKey>
<RegistryKey Key="Shell" ForceCreateOnInstall="yes" ForceDeleteOnUninstall="yes">
<RegistryKey Key="openstackoverflowwebsite" ForceCreateOnInstall="yes" ForceDeleteOnUninstall="yes">
<RegistryValue Value="Open Stackoverflow" Type="string" />
<RegistryKey Key="command" ForceCreateOnInstall="yes" ForceDeleteOnUninstall="yes">
<RegistryValue Value=""[INSTALLDIR]stackoverflow.exe" /openwebsite "%1"" Type="string" />
</RegistryKey>
</RegistryKey>
</RegistryKey>
</RegistryKey>
</Component>
Cet exemple enregistre l'icône par défaut pour une extension de fichier spécifique (.stackoverflow) qui est situé dans un ensemble de l'étape 1. montre également comment créer des commandes de clic droit associées à Windows Explorer et ajoute un élément de menu au sous-menu Windows Explorer New.
Merci
-Blake Niemyjski
Ce code fonctionne à partir de WIX 3.6 ... –
- 1. Puis-je définir une licence personnalisée en utilisant WiX?
- 2. Définir la version ASP.Net en utilisant WiX
- 3. Comment faire pour définir l'image/icône sur un WPF Page
- 4. Extraction d'une icône/vignette pour un fichier
- 5. WiX - Créer MSI en utilisant msbuild
- 6. Déployer un déclencheur CLR/procédure stockée en utilisant WiX
- 7. Comment convertir un fichier vdproj au format WiX?
- 8. Extraire une icône correcte 16x16 affectée à un fichier?
- 9. Icône de raccourci dans un fichier cab
- 10. Pouvez-vous définir une désinstallation conditionnelle dans Wix?
- 11. Comment ajouter une icône à un exécutable compilé mingw-gcc?
- 12. Code simple pour extraire une icône d'un fichier .exe
- 13. Comment filtrer un fichier en utilisant un modèle dans un autre fichier en utilisant Python?
- 14. Comment restaurer un fichier en utilisant C#?
- 15. Définir un autre fichier de configuration pour le proxy
- 16. WiX définir le dossier App_Data permission de modifier pour NetworkService
- 17. Comment obtenir l'emplacement d'un fichier dans un script WiX
- 18. Wix, Heat et Wxi fichier
- 19. icônes de type de fichier en utilisant une règle css
- 20. Comment définir une valeur de chaîne dynamique en utilisant Javascript?
- 21. Comment créer une icône de plateau avec une image personnalisée en utilisant QT?
- 22. Comment définir les permissions (attributs) sur un fichier dans un fichier ZIP en utilisant le module zipfile de Python?
- 23. Comment définir un Guid en utilisant Microsoft Unity
- 24. Inclure un contenu de fichier texte dans un script WiX
- 25. Comment définir le jeu de caractères en utilisant XMLHttp Object pour un POST en ASP classique?
- 26. Comment installer une application ASP.Net MVC sur IIS 7 en utilisant Wix?
- 27. Comment faire pour installer les polices Open Type en utilisant Wix
- 28. Comment écrire une entrée de registre lors de la désinstallation en utilisant wix
- 29. En utilisant C#, comment puis-je définir une propriété Url à un fichier HTML dans mon projet?
- 30. comment télécharger un fichier en C# en utilisant webclient?
Et qu'est-ce que la valeur Foobar.exe intérieur = '[INSTALLDIR] Foobar.exe, 1' /> référence? Et où réside-t-il? – Filip
le lien est mort – DonDon