Partager via


Procédure pas à pas : déployer manuellement une application ClickOnce

Si vous ne pouvez pas utiliser Visual Studio pour déployer votre application ClickOnce ou si vous devez utiliser des fonctionnalités de déploiement avancées, telles que le déploiement d’applications approuvées, vous devez utiliser l’outil Mage.exe en ligne de commande pour créer vos manifestes ClickOnce. Cette procédure pas à pas explique comment créer un déploiement ClickOnce à l’aide de la version de ligne de commande (Mage.exe) ou de la version graphique (MageUI.exe) de l’outil génération de manifeste et d’édition.

Remarque

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.

Conditions préalables

Ce guide présente certaines conditions préalables et options que vous devez choisir avant de créer un déploiement.

  • Installez Mage.exe et MageUI.exe.

    Mage.exe et MageUI.exe font partie du Kit de développement logiciel (SDK) Windows. Vous devez avoir installé le Kit de développement logiciel (SDK) Windows ou la version du Kit de développement logiciel (SDK) Windows inclus avec Visual Studio.

  • Fournissez une application à déployer.

    Cette procédure pas à pas suppose que vous disposez d’une application Windows que vous êtes prêt à déployer. Cette application sera appelée AppToDeploy.

  • Déterminez la façon dont le déploiement sera distribué.

    Les options de distribution sont les suivantes : Web, partage de fichiers ou CD. Pour plus d’informations, consultez La sécurité et le déploiement ClickOnce.

  • Déterminez si l’application nécessite un niveau de confiance élevé.

    Si votre application nécessite une confiance totale (par exemple, un accès total au système de l’utilisateur), vous pouvez utiliser l'option -TrustLevel de Mage.exe pour définir cela. Si vous souhaitez définir un jeu d’autorisations personnalisé pour votre application, vous pouvez copier la section d’autorisation Internet ou intranet à partir d’un autre manifeste, la modifier en fonction de vos besoins et l’ajouter au manifeste de l’application à l’aide d’un éditeur de texte ou d’unMageUI.exe. Pour plus d’informations, consultez la vue d’ensemble du déploiement d’applications approuvées.

  • Obtenez un certificat Authenticode.

    Vous devez signer votre déploiement avec un certificat Authenticode. Vous pouvez générer un certificat de test à l’aide de Visual Studio, MageUI.exe, MakeCert.exe ou d’outils Pvk2Pfx.exe, ou vous pouvez obtenir un certificat auprès d’une autorité de certification. Si vous choisissez d’utiliser le déploiement d’applications approuvées, vous devez également effectuer une installation unique du certificat sur tous les ordinateurs clients. Pour plus d’informations, consultez Vue d’ensemble du déploiement d’applications approuvées.

    Remarque

    Vous pouvez également signer votre déploiement avec un certificat CNG que vous pouvez obtenir auprès d’une autorité de certification.

  • Assurez-vous que l’application n’a pas de manifeste avec des informations UAC.

    Vous devez déterminer si votre application contient un manifeste avec des informations UAC (User Account Control), telles qu’un <dependentAssembly> élément. Pour examiner un manifeste d’application, vous pouvez utiliser l’utilitaire Windows Sysinternals Sigcheck .

    Si votre application contient un manifeste avec des détails UAC, vous devez le recréer sans les informations UAC. Pour un projet C# dans Visual Studio, ouvrez les propriétés du projet et sélectionnez l’onglet Application. Dans la liste déroulante Manifeste , sélectionnez Créer une application sans manifeste. Pour un projet Visual Basic dans Visual Studio, ouvrez les propriétés du projet, sélectionnez l’onglet Application, puis cliquez sur Afficher les paramètres UAC. Dans le fichier manifeste ouvert, supprimez tous les éléments au sein de l’élément unique <asmv1:assembly> .

  • Déterminez si l’application nécessite des conditions préalables sur l’ordinateur client.

    Les applications ClickOnce déployées à partir de Visual Studio peuvent inclure un programme d’installation requis (setup.exe) avec votre déploiement. Cette procédure pas à pas crée les deux manifestes requis pour un déploiement ClickOnce. Vous pouvez créer un programme d’amorçage requis à l’aide de la tâche GenerateBootstrapper.

Pour déployer une application avec l’outil en ligne de commande Mage.exe

  1. Créez un répertoire dans lequel vous allez stocker vos fichiers de déploiement ClickOnce.

  2. Dans le répertoire de déploiement que vous venez de créer, créez un sous-répertoire de version. S’il s’agit de la première fois que vous déployez l’application, nommez le sous-répertoire de version 1.0.0.0.

    Remarque

    La version de votre déploiement peut être distincte de la version de votre application.

  3. Copiez tous vos fichiers d’application dans le sous-répertoire de version, y compris les fichiers exécutables, les assemblys, les ressources et les fichiers de données. Si nécessaire, vous pouvez créer des sous-répertoires supplémentaires qui contiennent des fichiers supplémentaires.

  4. Ouvrez l’invite de commandes windows sdk ou Visual Studio et passez au sous-répertoire de version.

  5. Créez le manifeste de l’application avec un appel à Mage.exe. L’instruction suivante crée un manifeste d’application pour le code compilé pour s’exécuter sur le processeur Intel x86.

    mage -New Application -Processor x86 -ToFile AppToDeploy.exe.manifest -name "My App" -Version 1.0.0.0 -FromDirectory .
    

    Remarque

    Veillez à inclure le point (.) après l’option -FromDirectory , qui indique le répertoire actif. Si vous n’incluez pas le point, vous devez spécifier le chemin d’accès à vos fichiers d’application.

  6. Signez le manifeste de l’application avec votre certificat Authenticode. Remplacez mycert.pfx par le chemin d’accès à votre fichier de certificat. Remplacez passwd par le mot de passe de votre fichier de certificat.

    mage -Sign AppToDeploy.exe.manifest -CertFile mycert.pfx -Password passwd
    

    À compter du Kit de développement logiciel (SDK) .NET Framework 4.6.2, distribué avec Visual Studio et avec le Kit de développement logiciel (SDK) Windows, mage.exe signe des manifestes avec CNG ainsi qu’avec des certificats Authenticode. Utilisez les mêmes paramètres de ligne de commande que les certificats Authenticode.

  7. Passez à la racine du répertoire de déploiement.

  8. Générez le manifeste de déploiement avec un appel à Mage.exe. Par défaut, Mage.exe marque votre déploiement ClickOnce en tant qu’application installée, afin qu’il puisse être exécuté en ligne et hors connexion. Pour rendre l’application disponible uniquement lorsque l’utilisateur est en ligne, utilisez l’option -Install avec la valeur false. Si vous utilisez la valeur par défaut et que les utilisateurs installent votre application à partir d’un site web ou d’un partage de fichiers, assurez-vous que la valeur de l’option -ProviderUrl pointe vers l’emplacement du manifeste de l’application sur le serveur web ou le partage.

    mage -New Deployment -Processor x86 -Install true -Publisher "My Co." -ProviderUrl "\\myServer\myShare\AppToDeploy.application" -AppManifest 1.0.0.0\AppToDeploy.exe.manifest -ToFile AppToDeploy.application
    
  9. Signez le manifeste de déploiement avec votre certificat Authenticode ou CNG.

    mage -Sign AppToDeploy.application -CertFile mycert.pfx -Password passwd
    
  10. Copiez tous les fichiers du répertoire de déploiement vers la destination ou le média de déploiement. Il peut s’agir d’un dossier sur un site Web ou un site FTP, un partage de fichiers ou un CD-ROM.

  11. Fournissez à vos utilisateurs l’URL, UNC ou le support physique requis pour installer votre application. Si vous fournissez une URL ou un UNC, vous devez donner à vos utilisateurs le chemin complet du manifeste de déploiement. Par exemple, si AppToDeploy est déployé http://webserver01/ dans le répertoire AppToDeploy, le chemin d’URL complet est http://webserver01/AppToDeploy/AppToDeploy.application.

Pour déployer une application avec l’outil graphique MageUI.exe

  1. Créez un répertoire dans lequel vous allez stocker vos fichiers de déploiement ClickOnce.

  2. Dans le répertoire de déploiement que vous venez de créer, créez un sous-répertoire de version. S’il s’agit de la première fois que vous déployez l’application, nommez le sous-répertoire de version 1.0.0.0.

    Remarque

    La version de votre déploiement est probablement distincte de la version de votre application.

  3. Copiez tous vos fichiers d’application dans le sous-répertoire de version, y compris les fichiers exécutables, les assemblys, les ressources et les fichiers de données. Si nécessaire, vous pouvez créer des sous-répertoires supplémentaires qui contiennent des fichiers supplémentaires.

  4. Démarrez l’outil MageUI.exe graphique.

    MageUI.exe
    
  5. Créez un manifeste d’application en sélectionnant Fichier, Nouveau, Manifeste d’application dans le menu.

  6. Sous l’onglet Nom par défaut, tapez le nom et le numéro de version de ce déploiement. Spécifiez également le processeur pour lequel votre application est créée, par exemple x86.

  7. Sélectionnez l’onglet Fichiers, puis sélectionnez le bouton ellipses (...) à côté de la zone de texte du répertoire d’application. Une boîte de dialogue Rechercher un dossier s’affiche.

  8. Sélectionnez le sous-répertoire de version contenant vos fichiers d’application, puis sélectionnez OK.

  9. Si vous allez déployer à partir d’Internet Information Services (IIS), cochez la case Ajouter l’extension .deploy à tout fichier qui ne l’a pas lors du peuplement.

  10. Accédez au bouton Remplir pour ajouter tous vos fichiers d’application à la liste des fichiers. Si votre application contient plusieurs fichiers exécutables, marquez le fichier exécutable principal pour ce déploiement en tant qu’application de démarrage en sélectionnant Point d’entrée dans la liste déroulante Type de fichier . (Si votre application ne contient qu’un seul fichier exécutable, MageUI.exe marquez-le pour vous.)

  11. Sélectionnez l’onglet Autorisations requises , puis sélectionnez le niveau de confiance dont vous avez besoin pour affirmer votre application. La valeur par défaut est FullTrust, qui convient à la plupart des applications.

  12. Sélectionnez Fichier, Enregistrer sous dans le menu. Une boîte de dialogue Options de signature s’affiche pour vous inviter à signer le manifeste de l’application.

  13. Si vous disposez d’un certificat stocké en tant que fichier sur votre système de fichiers, utilisez l’option Signer avec un fichier de certificat , puis sélectionnez le certificat dans le système de fichiers à l’aide du bouton de sélection (...). Tapez ensuite votre mot de passe de certificat.

    - ou -

    Si votre certificat est conservé dans un magasin de certificats accessible à partir de votre ordinateur, sélectionnez l’option Signer avec certificat stocké , puis sélectionnez le certificat dans la liste fournie.

  14. Sélectionnez OK pour signer le manifeste de votre application. La boîte de dialogue Enregistrer sous s’affiche.

  15. Dans la boîte de dialogue Enregistrer sous, spécifiez le répertoire de version, puis choisissez Enregistrer.

  16. Sélectionnez Fichier, Nouveau, Manifeste de déploiement dans le menu pour créer votre manifeste de déploiement.

  17. Sous l’onglet Nom , spécifiez un nom et un numéro de version pour ce déploiement (1.0.0.0 dans cet exemple). Spécifiez également le processeur pour lequel votre application est créée, par exemple x86.

  18. Sélectionnez l’onglet Description et spécifiez des valeurs pour Publisher et Product. (Le produit est le nom donné à votre application dans le menu Démarrer de Windows lorsque votre application est installée sur un ordinateur client pour une utilisation hors connexion.)

  19. Sélectionnez l’onglet Options de déploiement , puis, dans la zone de texte Emplacement de démarrage , spécifiez l’emplacement du manifeste de l’application sur le serveur web ou le partage. Par exemple, \\myServer\myShare\AppToDeploy.application.

  20. Si vous avez ajouté l’extension .deploy à une étape précédente, sélectionnez Également Utiliser l’extension de nom de fichier .deploy ici.

  21. Sélectionnez l’onglet Options de mise à jour et spécifiez la fréquence à laquelle vous souhaitez mettre à jour cette application. Si votre application utilise UpdateCheckInfo pour vérifier elle-même les mises à jour, désactivez la case à cocher Cette application doit vérifier les mises à jour.

  22. Sélectionnez l’onglet Référence de l’application , puis accédez au bouton Sélectionner un manifeste . Une boîte de dialogue ouverte s’affiche.

  23. Sélectionnez le manifeste d’application que vous avez créé précédemment, puis sélectionnez Ouvrir.

  24. Sélectionnez Fichier, Enregistrer sous dans le menu. Une boîte de dialogue Options de signature s’affiche pour vous inviter à signer le manifeste de déploiement.

  25. Si vous disposez d’un certificat stocké en tant que fichier sur votre système de fichiers, utilisez l’option Signer avec un fichier de certificat , puis sélectionnez le certificat dans le système de fichiers à l’aide du bouton de sélection (...). Tapez ensuite votre mot de passe de certificat.

    - ou -

    Si votre certificat est conservé dans un magasin de certificats accessible à partir de votre ordinateur, sélectionnez l’option Signer avec certificat stocké , puis sélectionnez le certificat dans la liste fournie.

  26. Accédez à OK pour signer votre manifeste de déploiement. La boîte de dialogue Enregistrer sous s’affiche.

  27. Dans la boîte de dialogue Enregistrer sous, déplacez un répertoire vers la racine de votre déploiement, puis sélectionnez Enregistrer.

  28. Copiez tous les fichiers du répertoire de déploiement vers la destination ou le média de déploiement. Il peut s’agir d’un dossier sur un site Web ou un site FTP, un partage de fichiers ou un CD-ROM.

  29. Fournissez à vos utilisateurs l’URL, UNC ou le support physique requis pour installer votre application. Si vous fournissez une URL ou un UNC, vous devez donner à vos utilisateurs le chemin complet du manifeste de déploiement. Par exemple, si AppToDeploy est déployé http://webserver01/ dans le répertoire AppToDeploy, le chemin d’URL complet est http://webserver01/AppToDeploy/AppToDeploy.application.

Étapes suivantes

Lorsque vous devez déployer une nouvelle version de l’application, créez un répertoire nommé après la nouvelle version( par exemple, 1.0.0.1) et copiez les nouveaux fichiers d’application dans le nouveau répertoire. Ensuite, vous devez suivre les étapes précédentes pour créer et signer un manifeste d’application, puis mettre à jour et signer le manifeste de déploiement. Veillez à spécifier la même version plus récente dans les appels Mage.exe, -New et -Update, car ClickOnce met uniquement à jour les versions supérieures, avec l'entier le plus à gauche le plus significatif. Si vous avez utilisé MageUI.exe, vous pouvez mettre à jour le manifeste de déploiement en l’ouvrant, en sélectionnant l’onglet Référence de l’application, accédez au bouton Sélectionner le manifeste, puis en sélectionnant le manifeste d’application mis à jour.