C # Déploiement de mon application – clickonce à partir du Web uniquement

J’ai donc développé mon application en C #. Je suis prêt à le déployer. Je veux faire en sorte que les utilisateurs le lancent toujours à partir de mon site Web (pour qu’ils aient toujours les mises à jour, aucune installation, etc.).

Est-ce que ClickOnce est la bonne façon de faire cela?

J’ai essayé de déployer ClickOnce sur mon serveur et quelques éléments me sautent aux yeux:

1) L’utilisateur a la possibilité d’exécuter une installation ou de lancer le fichier .application – quelle est la différence? Ne peut-il pas détecter cela seul?

2) Lorsque j’essaie de “lancer” l’application. Il me demande de le télécharger sur mon ordinateur. Quoi qu’il en soit, il suffit de lancer le fichier directement à partir du navigateur?

3) Après avoir téléchargé et exécuté le fichier .application, le message suivant s’affiche: “Le déploiement et l’application ne possèdent pas de zones de sécurité correspondantes.”

Oui, ClickOnce répond parfaitement à vos besoins.

  1. Le setup.exe , ou “bootstrapper”, est utilisé pour installer des composants prérequirejs tels que .NET Framework et Microsoft Installer, car il s’agit du framework .NET qui contient le moteur d’exécution ClickOnce, nécessaire à l’installation de votre application. Le programme d’amorçage doit être utilisé une seule fois et uniquement sur les ordinateurs qui ne .application pas à ces conditions préalables. Par la suite, seul le fichier .application , appelé “manifeste de déploiement”, est utilisé pour les mises à jour. Lorsque vous publiez à l’aide de ClickOnce, un fichier Publish.htm est créé. Il contient du code JavaScript qui détecte si l’utilisateur a installé les conditions préalables. Si l’utilisateur ne le fait pas, il présente un bouton qui relie à setup.exe , sinon il présente un bouton qui relie directement au fichier .application . Vous pouvez utiliser cette page (ou en créer une basée sur celle-ci) pour offrir à vos utilisateurs l’expérience d’installation la plus courte possible.

  2. Soit le .NET Framework n’est pas installé sur l’ordinateur du client (dans ce cas, utilisez le programme d’amorçage), soit votre serveur Web n’est pas configuré correctement et n’associe donc pas l’extension .application au type d’ application/x-ms-application MIME application/x-ms-application . Créez cette association pour résoudre le problème. Je recommande également l’ajout d’en-têtes http pour désactiver le cache sur le manifeste de déploiement, sinon le navigateur de l’utilisateur peut le mettre en cache, ce qui pourrait entraîner des mises à jour manquantes pour l’utilisateur.

  3. Vous ne pouvez pas télécharger et exécuter le fichier manifeste de déploiement localement pour une installation ClickOnce publiée sur un site Web, car ClickOnce atsortingbue un niveau de confiance supérieur à l’installation locale (par exemple, à partir de l’ordinateur local ou d’un partage réseau), mais le manifeste d’application vers une source d’installation sur le Web, qui a un niveau de confiance plus faible et échoue donc. Une fois que vous résolvez le problème 2, ce problème sera également résolu.