Language

BackgroundTaskBuilder.SetTaskEntryPointClsid(Guid) メソッド

定義

既存の BackgroundTaskBuilder オブジェクトを使用して COM CLSID エントリ ポイントを割り当てます。

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)

パラメーター

TaskEntryPoint
Guid

Platform::Guid

winrt::guid

アプリケーション定義 TaskEntryPoint クラスの名前。

Windows の要件

要件 説明
デバイス ファミリ
Windows 10, version 2004 (10.0.19041.0 で導入)
API contract
Windows.Foundation.UniversalApiContract (v10.0 で導入)

例

次のコード サンプルでは、BackgroundTaskBuilder を使用して、作成された WinMain COM バックグラウンド タスクを 15 分間隔でタイム トリガーに登録する方法を示します。

サンプル コードでは、特定のタスク名を持つバックグラウンド タスクが既に登録されているかどうかを確認することで、重複するタスクの作成を回避します。 これはサンプル コードで行われます。これは、特定のバックグラウンド タスクの登録が 1 つだけ存在するという意図があるためです。

同じエントリ ポイント (またはトリガーまたは名前) を持つ 1 つまたは複数のバックグラウンド タスクを作成するのは、アプリ開発者が行う必要があります。

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

注釈

従来の COM CLSID アクティブ化の場合、アクティブ化する CLSID は、登録時に SetTaskEntryPointClsid メソッドを使用して指定されます。 COM 登録では、アウトプロセス COM サーバー (つまり LocalServer32) を識別する必要があります。

適用対象

こちらもご覧ください