BackgroundTaskBuilder.SetTaskEntryPointClsid(Guid) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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).