Forum aux questions sur les applications hébergées par un navigateur WPF (XBAP)

Windows Presentation Foundation (WPF) a été publié dans le cadre de .NET Framework 3.0 en 2006. La fonctionnalité Application de navigateur XAML (XBAP), qui permet aux applications WPF d’être hébergées et exécutées dans un navigateur web, a également été introduite en même temps dans le cadre de WPF. Au moment de la publication de WPF et XBAP en 2006, les navigateurs web les plus populaires disponibles étaient Internet Explorer 7, Mozilla Firefox 2 et Safari 2. Google Chrome n’était pas encore disponible, car il a été publié deux ans plus tard en 2008.

XBAP utilise la technologie de déploiement ClickOnce dans les navigateurs, qui est une technologie Microsoft qui permet à l’utilisateur d’installer et d’exécuter une application en cliquant sur un lien dans une page web. Toutefois, cette technologie s’appuie fortement sur la prise en charge de NPAPI (Interface de programmation des applications de plug-in Netscape) dans les navigateurs. NpAPI a été supprimé progressivement ces dernières années en raison de problèmes de sécurité et de stabilité. Les principaux navigateurs tels que Edge, Chrome, Firefox et Safari ont supprimé la prise en charge des plug-ins NPAPI, ce qui signifie efficacement que les applications XBAP ne peuvent plus être exécutées dans ces navigateurs.

Prise en charge des XBAPs

Quel est le niveau actuel de support fourni par Microsoft pour les XBAPs ?

Les adresses XBAPs sont prises en charge avec .NET Framework. WPF pour .NET n’inclut pas la prise en charge de XBAP.

Existe-t-il des navigateurs pris en charge qui prennent en charge XBAP en mode natif ?

Pas exactement, il n’existe plus de navigateurs pris en charge qui ont été conçus pour XBAP. La prise en charge d’Internet Explorer 11 a pris fin le 15 juin 2022. Certains navigateurs, tels que Microsoft Edge et Google Chrome, disposent d’une fonctionnalité en mode Internet Explorer (mode Internet Explorer) qui ajoute la prise en charge héritée d’Internet Explorer. Ces modes n’ont pas été conçus pour les XBAPs. Certaines fonctionnalités XBAP peuvent ne pas fonctionner. Pour plus d’informations, consultez le mode Internet Explorer (Internet Explorer).

Comment faire exécuter mon XBAP ?

Les adresses XBAP doivent être déployées sur un serveur web et vous devez utiliser un navigateur avec la compatibilité du mode Internet Explorer (mode IE). Vous devrez peut-être configurer la stratégie locale pour activer votre application dans la zone de sécurité Internet Explorer appropriée. Pour plus d’informations, consultez le mode Internet Explorer (Internet Explorer) et configurer la prise en charge du navigateur hérité pour Microsoft Edge en mode Internet Explorer.

Options de migration

Puis-je convertir mon XBAP en application WPF ?

Oui. Vous pouvez migrer votre application vers une application WPF standard et la déployer via un programme d’installation. Vous pouvez toujours publier une application WPF avec ClickOnce, mais ClickOnce nécessite un navigateur avec le mode Internet Explorer activé ou un plug-in qui active ClickOnce.

J’ai besoin d’exécuter dans un navigateur, quelles sont mes options ?

  • ASP.NET Core à l’aide de Blazor et WebAssembly

    Blazor est une application web de pile complète qui utilise C#. Selon la façon dont votre code est bien organisé et compartimenté, vous devrez peut-être réécrire le front-end de votre application dans Blazor. Les applications Blazor peuvent être déployées à l’aide de WebAssembly, ce qui permet à l’application d’exécuter entièrement côté client dans le navigateur.

    Pour plus d’informations, consultez Présentation de Blazor.

  • .NET MAUI

    Si vous avez créé votre application en tant que XBAP afin qu’elle puisse s’exécuter sur des systèmes d’exploitation non Windows, essayez de convertir votre application en .NET MAUI, qui utilise également XAML pour son interface utilisateur. .NET MAUI est différent de WPF, bien qu’ils partagent de nombreux concepts similaires. Pour plus d’informations, consultez What is .NET MAUI.

  • OpenSilver

    Le projet OpenSilver a été créé comme alternative à Silverlight. Silverlight était un sous-ensemble de WPF qui a été abandonné il y a longtemps. Votre projet XBAP peut bien se convertir en OpenSilver. Pour plus d’informations, consultez le site web OpenSilver et le dépôt GitHub.