다음을 통해 공유


작업 이름 및 상태 표시(스크립팅)

이 스크립팅 예제에서는 작업 폴더에서 작업을 열거하고 각 작업의 속성 값을 표시하는 방법을 보여 줍니다.

다음 절차에서는 작업 폴더의 모든 작업에 대한 작업 이름과 상태를 표시하는 방법을 설명합니다.

작업 폴더의 모든 작업에 대한 작업 이름 및 상태를 표시하려면

  1. TaskService 개체를 만듭니다.

    이 개체를 사용하면 작업 스케줄러 서비스에 연결하고 특정 작업 폴더에 액세스할 수 있습니다.

  2. 정보를 원하는 작업을 포함하는 작업 폴더를 가져옵니다.

    TaskService.GetFolder 메서드를 사용하여 폴더를 가져옵니다.

  3. 폴더에서 작업 컬렉션을 가져옵니다.

    TaskFolder.GetTasks 메서드를 사용하여 작업 컬렉션을 가져옵니다(RegisteredTaskCollection).

  4. 컬렉션의 작업 수를 가져와 컬렉션의 각 작업을 열거합니다.

    RegisteredTaskCollection 개체 컬렉션을 사용하여 RegisteredTask 개체 instance 가져옵니다. 각 instance 컬렉션에 작업을 포함합니다. 그런 다음 등록된 각 작업의 정보(속성 값)를 표시할 수 있습니다.

다음 VBScript 예제에서는 루트 작업 폴더에 등록된 작업 컬렉션을 열거하고 각 작업의 이름과 상태를 표시하는 방법을 보여 줍니다.

'---------------------------------------------------------
' This sample enumerates through the tasks on the local computer and
' displays their name and state.
'---------------------------------------------------------


' Create the TaskService object.
Set service = CreateObject("Schedule.Service")
call service.Connect()

' Get the task folder that contains the tasks. 
Dim rootFolder
Set rootFolder = service.GetFolder("\")
 
Dim taskCollection
Set taskCollection = rootFolder.GetTasks(0)

Dim numberOfTasks
numberOfTasks = taskCollection.Count

If numberOfTasks = 0 Then 
    Wscript.Echo "No tasks are registered."
Else
    WScript.Echo "Number of tasks registered: " & numberOfTasks
    
    Dim registeredTask
    For Each registeredTask In taskCollection
        WScript.Echo "Task Name: " & registeredTask.Name
    
        Dim taskState 
        Select Case registeredTask.State 
            Case "0"
                taskState = "Unknown"
            Case "1"
                taskState = "Disabled"
            Case "2"
                taskState = "Queued"
            Case "3"
                taskState = "Ready"
            Case "4"
                taskState = "Running"
        End Select

        WScript.Echo "    Task State: " & taskState
    Next
End If

작업 스케줄러 사용