Obter informações de ativação para aplicativos empacotados
Do Windows 10, versão 1809 em diante, os aplicativos de área de trabalho empacotados podem chamar o método AppInstance.GetActivatedEventArgs para recuperar determinados tipos de informações de ativação de aplicativo durante a inicialização. Por exemplo, você pode chamar esse método para obter informações relacionadas à ativação do aplicativo ao abrir um arquivo, clicando em uma notificação do sistema interativa ou usando um protocolo. Do Windows 10, versão 2004, em diante, esse recurso também é compatível com aplicativos empacotados com localização externa (confira Conceder identidade do pacote empacotando-o com localização externa).
Observação
Além de recuperar determinados tipos de informações de ativação usando o método AppInstance.GetActivatedEventArgs, conforme descrito neste artigo, você também pode recuperar informações de ativação de tarefas em segundo plano definindo uma classe COM. Para obter mais informações, confira Criar e registrar uma tarefa COM em segundo plano do winmain.
Exemplo de código
O exemplo de código a seguir demonstra como chamar o método AppInstance.GetActivatedEventArgs na função Main em um aplicativo do Windows Forms. Para cada tipo de ativação ao qual o seu aplicativo dá suporte, converta o valor retornado de args
para o tipo de args de evento correspondente. Neste exemplo de código, é presumido que os métodos de Handlexxx
são um código de manipulador de ativação dedicado que você definiu em outro lugar.
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;
}
Tipos de ativação com suporte
Você pode usar o método AppInstance.GetActivatedEventArgs para recuperar informações de ativação do conjunto de objetos args de evento com suporte listados na tabela a seguir. Alguns desses tipos de ativação exigem o uso de uma extensão de pacote no manifesto do pacote.
As informações de ativação do ShareTargetActivatedEventArgs têm suporte apenas no Windows 10, versão 2004 e posteriores. Todos os outros tipos de informações de ativação têm suporte no Windows 10, versão 1809 e posteriores.
Windows developer