Partager via


Resigner des manifestes d’application et de déploiement

Après avoir apporté des modifications aux propriétés de déploiement dans le manifeste d’application pour les applications Windows Forms, les applications Windows Presentation Foundation (xbap) ou les solutions Office, vous devez signer à nouveau l’application et les manifestes de déploiement avec un certificat. Ce processus aide à garantir que des fichiers falsifiés ne sont pas installés sur les ordinateurs des utilisateurs finaux.

Un autre scénario où vous pouvez signer à nouveau les manifestes est lorsque vos clients souhaitent signer les manifestes d’application et de déploiement avec leur propre certificat.

Resigner les manifestes d’application et de déploiement

Cette procédure suppose que vous avez déjà apporté des modifications à votre fichier manifeste d’application (.manifest). Pour plus d’informations, voir Comment modifier les propriétés de déploiement.

Note

Dans ClickOnce pour .NET Core 3.1 et .NET 5 (ou version ultérieure), utilisez dotnet-mage.exe au lieu de Mage.exe. Pour plus d’informations, consultez ClickOnce pour .NET.

Pour signer à nouveau les manifestes d’application et de déploiement avec Mage.exe

  1. Ouvrez une fenêtre d’invite de commandes Visual Studio.

  2. Remplacez les répertoires par le dossier qui contient les fichiers manifeste que vous souhaitez signer.

  3. Tapez la commande suivante pour signer le fichier manifeste de l’application. Remplacez ManifestFileName par le nom de votre fichier manifeste plus l’extension. Remplacez Certificate par le chemin d’accès relatif ou complet du fichier de certificat et Password par le mot de passe du certificat.

    mage -sign ManifestFileName.manifest -CertFile Certificate -Password Password
    

    Par exemple, vous pouvez exécuter la commande suivante pour signer un manifeste d’application pour un complément, une application Windows Form ou une application de navigateur Windows Presentation Foundation. Les certificats temporaires créés par Visual Studio ne sont pas recommandés pour le déploiement dans des environnements de production.

    mage -sign WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx
    mage -sign ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx
    mage -sign WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
    
  4. Tapez la commande suivante pour mettre à jour et signer le fichier manifeste de déploiement, en remplaçant les noms des espaces réservés comme à l’étape précédente.

    mage -update DeploymentManifest -appmanifest ApplicationManifest -CertFile Certificate -Password Password
    

    Par exemple, vous pouvez exécuter la commande suivante pour mettre à jour et signer un manifeste de déploiement pour un complément Excel, une application Windows Forms ou une application de navigateur Windows Presentation Foundation.

    mage -update WindowsFormsApplication1.application -appmanifest WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx
    mage -update ExcelAddin1.vsto -appmanifest ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx
    mage -update WpfBrowserApplication1.xbap -appmanifest WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
    
  5. Si vous le souhaitez, copiez le manifeste de déploiement maître (publish\<appname>.application) dans votre répertoire de déploiement de version (publish\Application Files\<appname>_<version>).

Mettre à jour et signer à nouveau les manifestes d’application et de déploiement

Cette procédure suppose que vous avez déjà apporté des modifications à votre fichier manifeste d’application (.manifest), mais que d’autres fichiers ont été mis à jour. Lorsque les fichiers sont mis à jour, le hachage qui représente le fichier doit également être mis à jour.

Pour mettre à jour et signer à nouveau les manifestes d’application et de déploiement avec Mage.exe

  1. Ouvrez une fenêtre d’invite de commandes Visual Studio.

  2. Remplacez les répertoires par le dossier qui contient les fichiers manifeste que vous souhaitez signer.

  3. Supprimez l’extension de fichier .deploy des fichiers du dossier de sortie de publication.

  4. Tapez la commande suivante pour mettre à jour le manifeste de l’application avec les nouveaux hachages pour les fichiers mis à jour et signer le fichier manifeste de l’application. Remplacez ManifestFileName par le nom de votre fichier manifeste plus l’extension. Remplacez Certificate par le chemin d’accès relatif ou complet du fichier de certificat et Password par le mot de passe du certificat.

    mage -update ManifestFileName.manifest -CertFile Certificate -Password Password
    

    Par exemple, vous pouvez exécuter la commande suivante pour signer un manifeste d’application pour un complément, une application Windows Form ou une application de navigateur Windows Presentation Foundation. Les certificats temporaires créés par Visual Studio ne sont pas recommandés pour le déploiement dans des environnements de production.

    mage -update WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx
    mage -update ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx
    mage -update WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
    
  5. Tapez la commande suivante pour mettre à jour et signer le fichier manifeste de déploiement, en remplaçant les noms des espaces réservés comme à l’étape précédente.

    mage -update DeploymentManifest -appmanifest ApplicationManifest -CertFile Certificate -Password Password
    

    Par exemple, vous pouvez exécuter la commande suivante pour mettre à jour et signer un manifeste de déploiement pour un complément Excel, une application Windows Forms ou une application de navigateur Windows Presentation Foundation.

    mage -update WindowsFormsApplication1.application -appmanifest WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx
    mage -update ExcelAddin1.vsto -appmanifest ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx
    mage -update WpfBrowserApplication1.xbap -appmanifest WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
    
  6. Rajoutez l’extension de fichier .deploy aux fichiers, à l’exception des fichiers manifeste d’application et de déploiement.

  7. Si vous le souhaitez, copiez le manifeste de déploiement maître (publish\<appname>.application) dans votre répertoire de déploiement de version (publish\Application Files\<appname>_<version>).