タスク スケジューラの実行アクションにスクリプト ファイルへのパスを指定すると実行されない

適用対象: Windows Server 2012 DatacenterWindows Server 2012 DatacenterWindows Server 2012 Essentials

現象


タスク スケジューラにタスクを作成し [操作] タブにおいて実行するファイルのパスを、スクリプト ファイルのパス (.vbs、.js など)  に直接指定すると、スクリプトが実行されません。

原因


タスク スケジューラの不具合により、指定されたスクリプト ファイルの末尾の文字列が正常に解釈されません。このため.vbs、.js の拡張子と関連付けのあるアプリケーションを特定できず、スクリプトが実行されません。

回避策


  下記のいずれかの方法で本事象は回避可能です。

 

1. 以下のようにスクリプト ファイルを、スペースを含まないパスに配置します。

 

   - 例 :

      C:\testscript\script01.vbs

 

2. タスクのアクション パスにスクリプト エンジンの実行ファイル (cscript.exe or wcsript.exe) を指定します。

 

   - 例 :

       Program/script : cscript.exe (or wcsript.exe)

       Add arguments(optional) : "C:\test script\script01.vbs"

 

3. スクリプト ファイルへのパスを記述したバッチ ファイルを作成し、タスクからバッチ ファイルを実行します。

 

    - 例 :

     a) バッチ ファイルを作成します。 (invokescript.bat など).

     b) バッチファイル内に、スクリプトの実行パスを記述します。

 

        "C:\test script\script01.vbs"

 

     c) タスク スケジューラのアクション タブで、バッチ ファイル (invokescript.bat)を指定します。

状況


マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。