Récemment, j'utilise WIX pour créer un programme d'installation pour mon application WPF et j'ai besoin de copier beaucoup de DLL dans le dossier d'installation. Le problème est que certains d'entre eux ne sont pas copiés dans le dossier la première fois que j'utilise le programme d'installation, mais c'est la deuxième fois. Cela se produit lorsqu'une version antérieure du logiciel est déjà installée sur l'ordinateur.Quelques fichiers ne copiant pas dans le dossier d'installation la première fois en utilisant WIX
<!-- Telerik Dlls -->
<Component Id="Telerik.Windows.Controls.Chart.dll" Guid="8bd4b407-1ecb-40d7-b4c3-000000000014">
<File Id="Telerik.Windows.Controls.Chart.dll" Source="..\..\bin\vc100\Win32\Release\Telerik.Windows.Controls.Chart.dll" KeyPath="yes" Checksum="yes"/>
</Component>
<Component Id="Telerik.Windows.Controls.Data.dll" Guid="8bd4b407-1ecb-40d7-b4c3-000000000015">
<File Id="Telerik.Windows.Controls.Data.dll" Source="..\..\bin\vc100\Win32\Release\Telerik.Windows.Controls.Data.dll" KeyPath="yes" Checksum="yes"/>
</Component>
<Component Id="Telerik.Windows.Controls.DataVisualization.dll" Guid="8bd4b407-1ecb-40d7-b4c3-000000000016">
<File Id="Telerik.Windows.Controls.DataVisualization.dll" Source="..\..\bin\vc100\Win32\Release\Telerik.Windows.Controls.DataVisualization.dll" KeyPath="yes" Checksum="yes"/>
</Component>
<Component Id="Telerik.Windows.Controls.dll" Guid="8bd4b407-1ecb-40d7-b4c3-000000000017">
<File Id="Telerik.Windows.Controls.dll" Source="..\..\bin\vc100\Win32\Release\Telerik.Windows.Controls.dll" KeyPath="yes" Checksum="yes"/>
</Component>
<Component Id="Telerik.Windows.Controls.Docking.dll" Guid="8bd4b407-1ecb-40d7-b4c3-000000000018">
<File Id="Telerik.Windows.Controls.Docking.dll" Source="..\..\bin\vc100\Win32\Release\Telerik.Windows.Controls.Docking.dll" KeyPath="yes" Checksum="yes"/>
</Component>
<!-- Modules -->
<Component Id="MCManager.dll" Guid="8bd4b407-1ecb-40d7-b4c3-000000000001">
<File Id="MCManager.dll" Source="..\..\bin\vc100\Win32\Release\MCManager.dll" KeyPath="yes" Checksum="yes"/>
</Component>
<Component Id="NavigationManager.dll" Guid="8bd4b407-1ecb-40d7-b4c3-000000000002">
<File Id="NavigationManager.dll" Source="..\..\bin\vc100\Win32\Release\NavigationManager.dll" KeyPath="yes" Checksum="yes"/>
</Component>
<Component Id="MCTools.dll" Guid="8bd4b407-1ecb-40d7-b4c3-000000000003">
<File Id="MCTools.dll" Source="..\..\bin\vc100\Win32\Release\MCTools.dll" KeyPath="yes" Checksum="yes"/>
</Component>
Le problème se produit avec Telerik dll, les autres sont copiés lors de la première installation essayer correctement.
Merci d'avance :)
Vérifiez que les fichiers installés dans la nouvelle version du programme d'installation ont une version de fichier plus élevée que les mêmes fichiers installés par l'ancien installateur. –
Comment puis-je définir une nouvelle version pour un fichier ?? Merci! – OriolBur
Ce n'est pas quelque chose que vous définiriez dans WiX, les fichiers eux-mêmes auront leurs propres informations de version. Si vous voulez que WiX ignore les versions de fichiers et les écrase quoi qu'il arrive, ajoutez la ligne suivante à votre installateur: –