Partager via


BackgroundTaskBuilder.SetTaskEntryPointClsid(Guid) Méthode

Définition

Affecte un point d’entrée CLSID COM à l’aide d’un objet BackgroundTaskBuilder existant.

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)

Paramètres

TaskEntryPoint
Guid

Platform::Guid

winrt::guid

Nom de la classe TaskEntryPoint définie par l’application.

Configuration requise pour Windows

Famille d’appareils
Windows 10, version 2004 (introduit dans 10.0.19041.0)
API contract
Windows.Foundation.UniversalApiContract (introduit dans v10.0)

Exemples

L’exemple de code suivant illustre l’utilisation de BackgroundTaskBuilder pour inscrire la tâche en arrière-plan WinMain COM créée auprès d’un déclencheur de temps sur un intervalle de 15 minutes.

L’exemple de code évite de créer des tâches en double en vérifiant si une tâche en arrière-plan avec un nom de tâche particulier est déjà inscrite. Cela est effectué dans l’exemple de code, car l’intention est qu’il n’existe qu’une seule inscription de tâche en arrière-plan particulière.

Il appartient au développeur de l’application de créer une ou plusieurs tâches en arrière-plan avec le même point d’entrée (ou déclencheur ou nom).

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

Remarques

Pour les activations CLSID COM classiques, le CLSID à activer est spécifié via la méthode SetTaskEntryPointClsid lors de l’inscription. L’inscription COM doit identifier un serveur COM hors processus (c’est-à-dire LocalServer32).

S’applique à

Voir aussi