BackgroundTaskBuilder.SetTaskEntryPointClsid(Guid) Metode

Definisi

Menetapkan titik entri COM CLSID menggunakan objek BackgroundTaskBuilder yang ada.

public:
 virtual void SetTaskEntryPointClsid(Platform::Guid TaskEntryPoint) = SetTaskEntryPointClsid;
void SetTaskEntryPointClsid(winrt::guid const& TaskEntryPoint);
public void SetTaskEntryPointClsid(Guid TaskEntryPoint);
function setTaskEntryPointClsid(TaskEntryPoint)
Public Sub SetTaskEntryPointClsid (TaskEntryPoint As Guid)

Parameter

TaskEntryPoint
Guid

Platform::Guid

winrt::guid

Nama kelas TaskEntryPoint yang ditentukan aplikasi.

Persyaratan Windows

Rangkaian perangkat
Windows 10, version 2004 (diperkenalkan dalam 10.0.19041.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v10.0)

Contoh

Sampel kode berikut menunjukkan penggunaan BackgroundTaskBuilder untuk mendaftarkan tugas latar belakang WinMain COM yang dibuat ke pemicu waktu pada interval 15 menit.

Kode sampel menghindari pembuatan tugas duplikat dengan memeriksa apakah tugas latar belakang dengan nama tugas tertentu sudah terdaftar. Ini dilakukan dalam kode sampel karena niatnya adalah bahwa hanya satu pendaftaran tugas latar belakang tertentu yang ada.

Terserah pengembang aplikasi untuk membuat satu atau beberapa tugas latar belakang dengan titik masuk yang sama (atau pemicu atau nama).

 using System;
 using Windows.ApplicationModel.Background;

 public IBackgroundTaskRegistration RegisterBackgroundTaskWithSystem(IBackgroundTrigger trigger, Guid entryPointClsid, string taskName)
 {
     foreach (var registrationIterator in BackgroundTaskRegistration.AllTasks)
     {
         if (registrationIterator.Value.Name == taskName)
         {
             return registrationIterator.Value;
         }
     }

     BackgroundTaskBuilder builder = new BackgroundTaskBuilder();

     builder.SetTrigger(trigger);
     builder.SetTaskEntryPointClsid(entryPointClsid);
     builder.Name = taskName;

     BackgroundTaskRegistration registration;
     try
     {
         registration = builder.Register();
     }
     catch (Exception)
     {
         registration = null;
     }

     return registration;
 }

 RegisterBackgroundTaskWithSystem(new TimeTrigger(15, false), typeof(TimeTriggeredTask).GUID, typeof(TimeTriggeredTask).Name);

Keterangan

Untuk aktivasi COM CLSID klasik, CLSID yang akan diaktifkan ditentukan melalui metode SetTaskEntryPointClsid selama pendaftaran. Pendaftaran COM harus mengidentifikasi server COM yang tidak diproses (yaitu LocalServer32).

Berlaku untuk

Lihat juga