Erhalten von Aktivierungsinformationen für App-Pakete
Ab Windows 10, Version 1809, können gepackte Desktop-Apps die Methode AppInstance.GetActivatedEventArgs aufrufen, um bestimmte Arten von App-Aktivierungsinformationen während des Starts abzurufen. Sie können diese Methode beispielsweise aufrufen, um Informationen zur App-Aktivierung beim Öffnen einer Datei, beim Klicken auf ein interaktives Popup oder beim Verwenden eines Protokolls abzurufen. Ab Version 2004 von Windows 10 wird dieses Feature auch in gepackten Apps mit externem Speicherort unterstützt (siehe Erteilen der Paketidentität durch Packen mit externem Speicherort).
Hinweis
Zusätzlich zum Abrufen bestimmter Arten von Aktivierungsinformationen mit der Methode AppInstance.GetActivatedEventArgs, wie in diesem Artikel beschrieben, können Sie auch Aktivierungsinformationen für Hintergrundaufgaben abrufen, indem Sie eine COM-Klasse definieren. Weitere Informationen finden Sie unter Erstellen und Registrieren einer WinMain-COM-Hintergrundaufgabe.
Codebeispiel
Das folgende Codebeispiel veranschaulicht, wie die Methode AppInstance.GetActivatedEventArgs von der Funktion Main-Funktion in einer Windows Forms-App aufgerufen wird. Wandeln Sie für jeden Aktivierungstyp, den Ihre App unterstützt, den Rückgabewert args
in den entsprechenden Ereignisargumenttyp um. In diesem Codebeispiel wird davor ausgegangen, dass es sich bei den Handlexxx
-Methoden um dedizierten Aktivierungshandlercode handelt, den Sie an anderer Stelle definiert haben.
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
var args = AppInstance.GetActivatedEventArgs();
switch (args.Kind)
{
case ActivationKind.Launch:
HandleLaunch(args as LaunchActivatedEventArgs);
break;
case ActivationKind.ToastNotification:
HandleToastNotification(args as ToastNotificationActivatedEventArgs);
break;
case ActivationKind.VoiceCommand:
HandleVoiceCommand(args as VoiceCommandActivatedEventArgs);
break;
case ActivationKind.File:
HandleFile(args as FileActivatedEventArgs);
break;
case ActivationKind.Protocol:
HandleProtocol(args as ProtocolActivatedEventArgs);
break;
case ActivationKind.StartupTask:
HandleStartupTask(args as StartupTaskActivatedEventArgs);
break;
default:
HandleLaunch(null);
break;
}
Unterstützte Aktivierungstypen
Sie können die Methode AppInstance.GetActivatedEventArgs verwenden, um Aktivierungsinformationen aus dem unterstützten Satz von Ereignisargumantobjekten abzurufen, die in der folgenden Tabelle aufgeführt sind. Einige dieser Aktivierungstypen erfordern die Verwendung einer Paketerweiterung im Paketmanifest.
ShareTargetActivatedEventArgs-Aktivierungsinformationen werden erst ab Windows 10, Version 2004, unterstützt. Alle anderen Aktivierungsinformationstypen werden ab Windows 10, Version 1809, unterstützt.
Windows developer