ITaskFolder::RegisterTaskDefinition 메서드(taskschd.h)
ITaskDefinition 인터페이스를 사용하여 지정된 위치에 작업을 등록(만듭니다).
통사론
HRESULT RegisterTaskDefinition(
[in] BSTR path,
[in] ITaskDefinition *pDefinition,
[in] LONG flags,
[in] VARIANT userId,
[in] VARIANT password,
[in] TASK_LOGON_TYPE logonType,
[in, optional] VARIANT sddl,
[out] IRegisteredTask **ppTask
);
매개 변수
[in] path
작업의 이름입니다. 이 값이 NULL
작업 이름은 공백 문자로 시작하거나 끝낼 수 없습니다. '.' 문자를 사용하여 현재 작업 폴더와 '.'을 지정할 수 없습니다. 문자는 경로에서 부모 작업 폴더를 지정하는 데 사용할 수 없습니다.
[in] pDefinition
등록된 작업의 정의입니다.
[in] flags
TASK_CREATION 상수입니다.
[in] userId
작업을 등록하는 데 사용되는 사용자 자격 증명입니다. 있는 경우 이러한 자격 증명은 pDefinition 매개 변수가 가리키는 작업 정의 개체에 지정된 자격 증명보다 우선합니다.
[in] password
작업을 등록하는 데 사용되는 userId의 암호입니다. TASK_LOGON_SERVICE_ACCOUNT 로그온 유형을 사용하는 경우 암호는
[in] logonType
등록된 작업을 실행하는 데 사용되는 로그온 기술을 정의합니다.
[in, optional] sddl
등록된 작업과 연결된 보안 설명자입니다. 작업에 대한 특정 사용자 및 그룹 액세스를 허용하거나 거부하기 위해 작업에 대한 보안 설명자에서 ACL(액세스 제어 목록)을 지정할 수 있습니다.
[out] ppTask
새 작업을 나타내는 IRegisteredTask 인터페이스입니다.
NULLIRegisteredTask 인터페이스 포인터에 대한 참조를 전달합니다. NULL 포인터를 참조하면 포인터를 덮어쓰기 때문에 메모리 누수가 발생할 수 있습니다.
반환 값
이 메서드는 이러한 값 중 하나를 반환할 수 있습니다.
반환 코드/값 | 묘사 |
---|---|
|
작업이 성공적으로 완료되었습니다. |
|
작업 스케줄러 서비스에 연결하기 위해 액세스가 거부되었습니다. |
|
애플리케이션에는 작업을 완료하는 데 충분한 메모리가 없거나 사용자 또는 암호 하나 이상의 null 및 1개의null 값이 있습니다. |
|
작업이 등록되었지만 시작에 실패할 수 있습니다. 작업 주체에 대해 일괄 로그온 권한을 사용하도록 설정해야 합니다. |
|
작업이 등록되었지만 지정된 모든 트리거가 작업을 시작하지는 않습니다. |
발언
메시지 상자 작업이 포함된 작업의 경우 작업이 활성화되고 작업에 대화형 로그온 유형이 있는 경우 메시지 상자가 표시됩니다. 작업 로그온 유형을 대화형으로 설정하려면 작업 주체의 LogonType 속성 또는 ITaskFolder::RegisterTask 또는 ITaskFolder::RegisterTaskDefinitionlogonType 매개 변수에서 TASK_LOGON_INTERACTIVE_TOKEN 또는 TASK_LOGON_GROUP 지정합니다.
관리자 그룹의 구성원만 부팅 트리거를 사용하여 작업을 만들 수 있습니다.
userId 매개 변수 TASK_LOGON_INTERACTIVE_TOKEN에 지정된 그룹과 ITaskFolder::RegisterTask 또는 ITaskFolder::RegisterTaskDefinitionlogonType 매개 변수에 지정된 그룹에 작업을 성공적으로 등록할 수 있지만 작업이 실행되지 않습니다.
TASK_VALIDATE_ONLY 및 TASK_IGNORE_REGISTRATION_TRIGGERS 값을 플래그 매개 변수에 함께 전달하는 것은 잘못된 인수입니다.
ITaskFolder::RegisterTaskDefinition 메서드는 사용자 매개 변수가 NULL, 암호 매개 변수가 NULL같고 logonType 매개 변수가 TASK_LOGON_SERVICE_ACCOUNT 동일한 시스템 계정에서 호출할 때 오류 80070534 반환합니다.
태스크가 작업의 NetworkSettings 설정에 없는 네트워크를 정의하는 경우 ITaskFolder::RegisterTaskDefinition 메서드는 작업이 등록될 때 오류 0x8000ffff 반환합니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | taskschd.h |
라이브러리 | Taskschd.lib |
DLL | Taskschd.dll |
참고 항목
ITaskFolder