Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les applications Win32 empaquetées et non empaquetées peuvent envoyer des notifications toast interactives comme les applications UWP. Cela inclut des applications empaquetées (voir Créer un projet pour une application de bureau WinUI 3 empaquetée) ; applications empaquetées avec emplacement externe (voir Accorder une identité de package en empaquetant avec un emplacement externe) ; et applications non empaquetées (voir Créer un projet pour une application de bureau WinUI 3 non empaquetée).
Toutefois, pour une application Win32 non empaquetée, il existe quelques étapes spéciales. Cela est dû aux différents schémas d’activation et à l’absence d’identité de package au moment de l’exécution.
Dans cette rubrique, nous allons répertorier les options dont vous disposez pour envoyer une notification toast sur Windows 10. Chaque option prend entièrement en charge...
- Maintien dans le Centre de notification
- Être activable à partir du popup et à l’intérieur du Centre de notifications
- Être activable lorsque votre EXE n'est pas en cours d'exécution
Toute les options
Le tableau ci-dessous illustre les options de support des toasts au sein de votre application de bureau et les fonctionnalités associées prises en charge. Vous pouvez utiliser la table pour sélectionner la meilleure option pour votre scénario.
| Option | Visuals | Actions | Inputs | S'active dans le processus |
|---|---|---|---|---|
| Activateur COM | Supported | Supported | Supported | Supported |
| Aucun COM / Stub CLSID | Supported | Supported | Non prise en charge | Non prise en charge |
Option préférée - Activateur COM
Il s’agit de l’option préférée qui fonctionne pour les applications de bureau et prend en charge toutes les fonctionnalités de notification. N’avez pas peur de l’activateur COM ; nous avons une bibliothèque pour les applications C# et C++ qui rend cette opération très simple, même si vous n’avez jamais écrit un serveur COM auparavant.
| Visuals | Actions | Inputs | S'active en cours |
|---|---|---|---|
| Supported | Supported | Supported | Supported |
Avec l’option d’activateur COM, vous pouvez utiliser les modèles de notification et les types d’activation suivants dans votre application.
| Type de modèle et d’activation | Packaged | Unpackaged |
|---|---|---|
| Premier plan ToastGeneric | Supported | Supported |
| Arrière-plan ToastGeneric | Supported | Supported |
| Protocole ToastGeneric | Supported | Supported |
| Modèles hérités | Supported | Non prise en charge |
Note
Si vous ajoutez l’activateur COM à votre application empaquetée existante, les activations de notifications en premier plan, en arrière-plan et les activations de notifications anciennes activeront votre activateur COM au lieu de votre ligne de commande.
Pour savoir comment utiliser cette option, consultez Envoyer une notification toast locale à partir d’applications C# de bureau ou Envoyer une notification toast locale à partir d’applications WRL Win32 C++.
Option alternative - Aucun COM / CLSID Stub
Il s’agit d’une autre option si vous ne pouvez pas implémenter d’activateur COM. Toutefois, vous sacrifierez quelques fonctionnalités, telles que la prise en charge des entrées (zones de texte sur les toasts) et l’activation dans le processus.
| Visuals | Actions | Inputs | Active le processus en cours |
|---|---|---|---|
| Supported | Supported | Non prise en charge | Non prise en charge |
Avec cette option, si vous assurez la prise en charge du bureau, vous êtes beaucoup plus limité dans les modèles de notification et les types d’activation que vous pouvez utiliser, tel qu'illustré ci-dessous.
| Type de modèle et d’activation | Packaged | Unpackaged |
|---|---|---|
| ToastGeneric Premier plan | Supported | Non prise en charge |
| Arrière-plan ToastGeneric | Supported | Non prise en charge |
| Protocole ToastGeneric | Supported | Supported |
| Modèles hérités | Supported | Non prise en charge |
Pour les applications empaquetées, envoyez simplement des notifications toast comme une application UWP. Lorsque l’utilisateur clique sur votre toast, votre application est lancée en ligne de commande avec les arguments de lancement que vous avez spécifiés dans le toast.
Pour les applications non empaquetées, configurez l’AUMID afin que vous puissiez envoyer des toasts, puis spécifier un CLSID sur votre raccourci. Il peut s’agir de n’importe quel GUID aléatoire. N’ajoutez pas le serveur/activateur COM. Vous ajoutez un CLSID COM « stub », ce qui permet au Centre de notifications de conserver la notification. Notez que vous pouvez utiliser uniquement des toasts d’activation de protocole, car le CLSID stub interrompt l’activation de tous les autres toasts. Par conséquent, vous devez mettre à jour votre application pour qu'elle prenne en charge l’activation du protocole, et vous devez faire en sorte que le protocole du toast active votre propre application.
Resources
Windows developer