タスクの名前と状態の表示 (スクリプト)
このスクリプトの例では、タスク フォルダー内のタスクを列挙し、各タスクのプロパティ値を表示する方法を示します。
次の手順では、タスク フォルダー内のすべてのタスクのタスク名と状態を表示する方法について説明します。
タスク フォルダー内のすべてのタスクのタスク名と状態を表示するには
TaskService オブジェクトを作成します。
このオブジェクトを使用すると、タスク スケジューラ サービスに接続し、特定のタスク フォルダーにアクセスできます。
情報が必要なタスクを保持するタスク フォルダーを取得します。
TaskService.GetFolder メソッドを使用してフォルダーを取得します。
フォルダーからタスクのコレクションを取得します。
TaskFolder.GetTasks メソッドを使用して、タスクのコレクションを取得します (RegisteredTaskCollection)。
コレクション内のタスクの数を取得し、コレクション内の各タスクを列挙します。
RegisteredTask オブジェクト インスタンスを取得するには、オブジェクトの RegisteredTaskCollection コレクション を 使用します。 各インスタンスには、コレクション内のタスクが含まれます。 その後、登録された各タスクの情報 (プロパティ値) を表示できます。
次の 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
関連トピック