VBSでタスクスケジューラ登録をしたいです。手動での登録は想定していません。

環境はWindows7pro 64bit/32bit混在です。

実行間隔:毎日
実行時間:01:00
実行プログラムは、C:\Temp\***.vbs

良い回答には300~500ptお支払いします。

回答の条件
  • 1人10回まで
  • 13歳以上
  • 登録:2015/08/07 14:09:17
  • 終了:2015/08/14 14:10:04

回答(1件)

id:atachibana No.1

atachibana回答回数3ベストアンサー獲得回数12015/08/08 01:31:27

ポイント500pt

タスクの有効期間を10年にしています。


Set service = CreateObject("Schedule.Service")
call service.Connect()

Set rootFolder = service.GetFolder("\")

Set taskDefinition = service.NewTask(0)

Set regInfo = taskDefinition.RegistrationInfo
regInfo.Description = "毎日 01:00 に VBS を実行"
regInfo.Author = "japan-nan"

Set settings = taskDefinition.Settings
settings.Enabled = True
settings.StartWhenAvailable = True
settings.Hidden = False

Set triggers = taskDefinition.Triggers

Set trigger = triggers.Create( 2 )
trigger.StartBoundary = "2015-08-08T01:00:00"
trigger.EndBoundary = "2025-08-08T01:00:00"
trigger.DaysInterval = 1
trigger.Id = "DailyTriggerId"
trigger.Enabled = True

Set Action = taskDefinition.Actions.Create( 0 )
Action.Path = "C:\Temp\test1.vbs"

call rootFolder.RegisterTaskDefinition("Daily VBS Task", taskDefinition, 6, , , 3)

id:japan-nan

私の環境のせいでしょうか。エラーは吐かないのですが登録されていませんでした。
こちらのコードで検証を続けます。

2015/08/09 23:52:04
id:atachibana

こちらも Windows 7 Pro 64bit です。
何が違うのでしょうね。

検証手順を考えました。

1) タスクスケジューラを開き、左側のウィンドウで「タスクスケジューラ(ローカル)」-「タスクスケジューラライブラリ」をクリックします。
-> 画面右側に既存のタスクが表示されます。

2) 次のプログラムを test.vbs に保存し、実行する。

      • ここから ---

Set service = CreateObject("Schedule.Service")
call service.Connect()

Set rootFolder = service.GetFolder("\")

Set taskDefinition = service.NewTask(0)

Set Action = taskDefinition.Actions.Create( 0 )
Action.Path = "C:\Temp\test1.vbs"

call rootFolder.RegisterTaskDefinition("Daily VBS Task", taskDefinition, 6, , , 3)

      • ここまで ---

3) タスクスケジューラで F5 を押し、更新する。

4) タスクの中に「Daily VBS Task」があることを確認する。

いかがでしょうか?

2015/08/10 21:41:54

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません