Win32_ScheduledJob 클래스의 메서드 만들기

CreateWMI 클래스 메서드는 나중에 지정된 시간과 날짜에 실행하기 위해 작업을 운영 체제에 제출합니다. 이 메서드를 사용하려면 작업이 제출된 컴퓨터에서 일정 서비스를 시작해야 합니다.

이 항목에서는 MOF(Managed Object Format) 구문을 사용합니다. 이 메서드를 사용하는 방법에 대한 자세한 내용은 메서드 호출을 참조하세요.

구문

uint32 Create(
  [in]           string   Command,
  [in]           datetime StartTime,
  [in, optional] boolean  RunRepeatedly,
  [in, optional] uint32   DaysOfWeek,
  [in, optional] uint32   DaysOfMonth,
  [in, optional] boolean  InteractWithDesktop,
  [out]          uint32   JobId
);

매개 변수

명령 [in]

일정 서비스에서 작업을 호출하는 데 사용하는 명령, 일괄 처리 프로그램 또는 이진 파일 및 명령줄 매개 변수의 이름입니다.

예: "defrag /q /f".

StartTime [in]

작업을 실행하는 UTC(협정 세계시) 시간입니다. 형식은 "YYYYMMDDHHMMSS입니다. MMMMMM(+-)OOO". 여기서 "YYYYMMDD"는 "******"로 바꿔야 합니다. 예: "****143000.000000-420"은 14.30(오후 2:30)을 지정합니다. 일광 절약 시간이 적용되는 PST.

StartTime 속성 값의 "(+-)OOO" 섹션은 현지 시간 변환에 대한 현재 바이어스입니다. 바이어스는 UTC 시간과 현지 시간의 차이입니다. 표준 시간대에 대한 편견을 계산하려면 표준 시간대가 그리니치 표준시(GMT)보다 앞지른 시간 수를 60으로 곱합니다(표준 시간대가 GMT보다 앞서 있는 경우 시간 수에 양수, 표준 시간대가 GMT 뒤에 있는 경우 음수 사용). 표준 시간대에서 일광 절약 시간을 사용하는 경우 계산에 60을 더 추가합니다. 예를 들어 태평양 표준 시간대는 GMT에 8시간 뒤이므로 일광 절약 시간이 사용 중일 때는 -420(-8 * 60 + 60)이고 일광 절약 시간을 사용하지 않는 경우 -480(-8 * 60)과 같습니다. 또한 Win32_TimeZone 클래스의 바이어스 속성을 쿼리하여 바이어스의 값을 확인할 수도 있습니다.

RunRepeatedly [in, optional]

True이면 예약된 작업이 특정 일에 반복적으로 실행됩니다. 기본값은 False입니다.

DaysOfWeek [in, optional]

작업이 실행되도록 예약된 요일; RunRepeatedly 매개 변수가 True인 경우에만 사용됩니다. 요일을 초과하여 작업을 예약하려면 논리적 OR에서 적절한 값을 조인합니다. 예를 들어 화요일과 금요일에 작업을 예약하려면 DaysOfWeek 값이 2 또는 16입니다.

월요일 (1)

화요일 (2)

수요일 (4)

목요일 (8)

금요일 (16)

토요일 (32)

일요일 (64)

DaysOfMonth [in, optional]

작업이 실행되도록 예약된 월의 일; RunRepeatedly 매개 변수가 True인 경우에만 사용됩니다.

1 (1)

월의 1일차

2 (2)

월의 2일차

3 (4)

월의 3일차

4 (8)

월의 4일차

5 (16)

월의 5일차

6 (32)

월의 6일차

7 (64)

한 달 중 7일차

8 (128)

한 달 중 8일차

9 (256)

한 달의 9일차

10 (512)

월 10일

11 (1024년)

한 달 중 11일

12 (2048년)

한 달의 12일차

13 (4096)

한 달의 13일차

14 (8192)

한 달의 14일차

15 (16384)

한 달의 15일차

16 (32768)

한 달의 16일차

17 (65536)

한 달의 17일차

18 (131072)

한 달의 18일차

19 (262144)

한 달의 19일차

20 (524288)

월 20일

21 (1048576)

월 21일

22 (2097152)

한 달의 22일차

23 (4194304)

한 달의 23일차

24 (8388608)

한 달의 24일차

25 (16777216)

월 25일

26 (33554432)

월 26일

27 (67108864)

한 달의 27일차

28 (134217728)

한 달의 28일차

29 (268435456)

한 달의 29일차

30 (536870912)

월 30일

31 (1073741824)

한 달 중 31일

InteractWithDesktop [in, optional]

True이면 지정된 작업이 대화형이어야 합니다. 즉, 작업이 실행되는 동안 사용자가 예약된 작업에 입력을 제공할 수 있습니다. 기본값은 False입니다.

JobId [out]

작업의 식별자 번호입니다. 이 매개 변수는 컴퓨터에서 예약되는 작업에 대한 핸들입니다.

반환 값

성공하면 0의 값을 반환하고 오류를 나타내는 다른 숫자를 반환합니다. 추가 오류 코드는 WMI 오류 상수 또는 WbemErrorEnum을 참조하세요. 일반적인 HRESULT 값은 시스템 오류 코드를 참조하세요.

완료되었습니다.

0

요청이 수락됩니다.

지원되지 않음

1

요청이 지원되지 않습니다.

액세스 거부됨

2

사용자에게 필요한 액세스 권한이 없습니다.

알 수 없는 오류

8

대화형 프로세스.

경로를 찾을 수 없음

9

서비스 실행 파일의 디렉터리 경로를 찾을 수 없습니다.

잘못된 매개 변수

21

잘못된 매개 변수가 서비스에 전달되었습니다.

서비스가 시작되지 않음

22

이 서비스가 실행되는 계정이 잘못되었거나 서비스를 실행할 수 있는 권한이 없습니다.

기타

23 4294967295

설명

예약된 작업이 메모장 같은 대화형 프로그램을 시작하는 경우 InteractWithDeskto 속성을 True로 설정해야 합니다. 그렇지 않으면 프로그램의 화면이 표시되지 않습니다. 이 프로세스는 화면에 표시되지 않더라도 작업 관리자 에 계속 표시됩니다.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows Vista
지원되는 최소 서버
Windows Server 2008
네임스페이스
Root\CIMV2
MOF
CIMWin32.mof
DLL
CIMWin32.dll

참고 항목

운영 체제 클래스

Win32_ScheduledJob