BackgroundTaskBuilder.SetTaskEntryPointClsid(Guid) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
기존 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분 간격으로 시간 트리거에 등록하는 방법을 보여 줍니다.
샘플 코드는 특정 작업 이름을 가진 백그라운드 작업이 이미 등록되어 있는지 확인하여 중복 작업을 만들지 않도록 합니다. 이 작업은 하나의 특정 백그라운드 작업 등록만 존재하기 때문에 샘플 코드에서 수행됩니다.
동일한 진입점(또는 트리거 또는 이름)을 사용하여 하나 이상의 백그라운드 작업을 만드는 것은 앱 개발자의 입니다.
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 등록은 Out-of-process COM 서버(예: LocalServer32)를 식별해야 합니다.