Mendapatkan info aktivasi untuk aplikasi paket

Mulai dari Windows 10, versi 1809, aplikasi desktop yang dipaketkan dapat memanggil metode AppInstance.GetActivatedEventArgs untuk mengambil jenis info aktivasi aplikasi tertentu selama startup. Misalnya, Anda dapat memanggil metode ini untuk mendapatkan info yang terkait dengan aktivasi aplikasi agar tidak membuka file, mengklik roti panggang interaktif, atau menggunakan protokol. Mulai Windows 10, versi 2004, fitur ini juga didukung dalam aplikasi paket dengan lokasi eksternal (lihat Memberikan identitas paket dengan pengemasan dengan lokasi eksternal).

Catatan

Selain mengambil jenis info aktivasi tertentu dengan menggunakan metode AppInstance.GetActivatedEventArgs seperti yang dijelaskan dalam artikel ini, Anda juga dapat mengambil info aktivasi untuk tugas latar belakang dengan menentukan kelas COM. Untuk informasi selengkapnya, lihat Membuat dan mendaftarkan tugas latar belakang COM winmain.

Contoh kode

Contoh kode berikut menunjukkan cara memanggil metode AppInstance.GetActivatedEventArgs dari fungsi Utama di aplikasi Formulir Windows. Untuk setiap jenis aktivasi yang didukung aplikasi Anda, berikan args nilai pengembalian ke jenis args peristiwa yang sesuai. Dalam contoh kode ini, Handlexxx metode diasumsikan sebagai kode handler aktivasi khusus yang telah Anda tentukan di tempat lain.

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;
    }

Jenis aktivasi yang didukung

Anda dapat menggunakan metode AppInstance.GetActivatedEventArgs untuk mengambil info aktivasi dari kumpulan objek args peristiwa yang didukung yang tercantum dalam tabel berikut. Beberapa jenis aktivasi ini memerlukan penggunaan ekstensi paket dalam manifes paket.

Info aktivasi ShareTargetActivatedEventArgs hanya didukung pada Windows 10, versi 2004, dan yang lebih baru. Semua jenis info aktivasi lainnya didukung pada Windows 10, versi 1809, dan yang lebih baru.

Jenis arg peristiwa Ekstensi paket Dokumen terkait
ShareTargetActivatedEventArgs uap:ShareTarget Menjadikan aplikasi desktop Anda sebagai target berbagi
ProtocolActivatedEventArgs uap:Protocol Memulai aplikasi Anda dengan menggunakan protokol
ToastNotificationActivatedEventArgs desktop:ToastNotificationActivation Pemberitahuan toast dari aplikasi desktop.
StartupTaskActivatedEventArgs desktop:StartupTask Memulai file yang dapat dieksekusi saat pengguna masuk ke Windows
FileActivatedEventArgs uap:FileTypeAssociation Mengaitkan aplikasi paket Anda dengan sekumpulan jenis file
VoiceCommandActivatedEventArgs Tidak ada Menangani aktivasi dan menjalankan perintah suara
LaunchActivatedEventArgs Tidak ada