RegisterTaskDefinition 80070534 error

작업 스케줄러를 이용하기 위하여 MSDN에서 예제를 찾아보았다.


Logon Trigger Example (C++)

http://msdn.microsoft.com/en-us/library/aa381911(v=vs.85).aspx



이 샘플 코드를 실행하면 




아래와 같은 80070534 에러 코드가 발생한다.


The ITaskFolder::RegisterTaskDefinition method returns error 80070534 when called by the System account with the user parameter equal to NULL, the password parameter equal to NULL, and the logonType parameter equal to TASK_LOGON_SERVICE_ACCOUNT.


이는 로그온 트리거를 등록할때

사용자 계정이 등록되어 있지 않아서 발생한다.


예제에서는

특정 사용자가 로그온 할때 동작시키기 위하여


 hr = pLogonTrigger->put_UserId( _bstr_t( L"DOMAIN\\UserName" ) );

 

가 포함되어 있어서, 저 "DOMAIN\\UserName" 부분을 실제 실행시키려는 컴퓨터의 계정 이름으로 변경하거나,

모든 사용자가 로그온할 때 사용시키기를 원하면 put_UserId를 입력시키지 않아도 된다.