none
タスクスケジューラの実行不具合について RRS feed

  • 質問

  • Windows Server 2008 R2 Standard 環境です。

    タスクスケジューラにて日時でbatファイルを実行するタスクを設定しましたが、

    ログオフした状態でタスクが実行されてもbatファイルが実行されません。(正確には対話型での処理が実行されません。)

    条件は下記の通りです。

    1.ログオン状態で「ユーザーがログオンしているときのみ実行する」  → OK

    2.ログオン状態で「ユーザーがログオンしているかどうかにかかわらず実行する」  → 1.がOKなのでテストしていません。

    3.ログオフ状態で「ユーザーがログオンしているときのみ実行する」  → NG (当たり前ですが)

    4.ログオフ状態で「ユーザーがログオンしているかどうかにかかわらず実行する」  → NG (今回の現象です。)

     

    batファイルでは

    1.他システムへログオン

    2.1.のシステムからcsvファイルを読み込み、特定フォルダに保管

    3.vbsファイルを実行し、2.で取得したデータの自動加工

    4.3.で加工したファイルをネットワーク上の他サーバー内特定フォルダへコピー(xcopy)

    を行っていますが、3.で停止してしまいその後の処理が行われません。

    タスクを確認するとcsv加工のためのExcelは起動されていますが、対話型処理が為されないために処理不可のように

    思えます。

    タスクスケジューラを用いて対話型処理を行う(ログオフ状態であっても)にはどのようにすれば良いのでしょうか?

     

     

    2010年10月15日 7:52

回答

  • 実行するプログラムやハンドリングするファイルに対してフルパスを指定されていますか?

    たとえば、cmd.exe を実行するのであれば、「%windir%\system32\cmd.exe」のようにフルパスを指定しないとうまく動作しないことがあります。


    MVP for Virtual Machine : Networking
    • 回答としてマーク 服部清次 2010年10月26日 4:15
    2010年10月16日 6:35
    モデレータ
  • こんにちは、フォーラムオペレーターの三沢健二です。

    処理の内容によっては、ログオフ状態では正常に動作しない場合があるようですね。
    下記の情報なども参考にしていただければと思います。

    - 参考情報
    windows server 2008 datacenter ログオフ状態のExcel操作について
    http://social.technet.microsoft.com/Forums/ja-JP/windowsserver2008ja/thread/7fab0e67-aa6f-4a1b-aa94-cedc064ef162

    Office のサーバーサイド オートメーションについて
    http://support.microsoft.com/kb/257757/ja

    タスク・スケジューラで組んだスケジュール・ジョブで無人運転時にユーザー・インターフェースが表示されない
    http://itpro.nikkeibp.co.jp/free/NT/WinReadersOnly/20040415/78/
    (少し古い情報ですが、、、)


    それでは、こちらの情報が少しでもお役にたてれば幸いです。

    ______________________________________
    マイクロソフト株式会社 フォーラム オペレーター 三沢健二

    • 回答としてマーク 服部清次 2010年10月26日 4:15
    2010年10月18日 1:29
    モデレータ

すべての返信

  • 実行するプログラムやハンドリングするファイルに対してフルパスを指定されていますか?

    たとえば、cmd.exe を実行するのであれば、「%windir%\system32\cmd.exe」のようにフルパスを指定しないとうまく動作しないことがあります。


    MVP for Virtual Machine : Networking
    • 回答としてマーク 服部清次 2010年10月26日 4:15
    2010年10月16日 6:35
    モデレータ
  • こんにちは、フォーラムオペレーターの三沢健二です。

    処理の内容によっては、ログオフ状態では正常に動作しない場合があるようですね。
    下記の情報なども参考にしていただければと思います。

    - 参考情報
    windows server 2008 datacenter ログオフ状態のExcel操作について
    http://social.technet.microsoft.com/Forums/ja-JP/windowsserver2008ja/thread/7fab0e67-aa6f-4a1b-aa94-cedc064ef162

    Office のサーバーサイド オートメーションについて
    http://support.microsoft.com/kb/257757/ja

    タスク・スケジューラで組んだスケジュール・ジョブで無人運転時にユーザー・インターフェースが表示されない
    http://itpro.nikkeibp.co.jp/free/NT/WinReadersOnly/20040415/78/
    (少し古い情報ですが、、、)


    それでは、こちらの情報が少しでもお役にたてれば幸いです。

    ______________________________________
    マイクロソフト株式会社 フォーラム オペレーター 三沢健二

    • 回答としてマーク 服部清次 2010年10月26日 4:15
    2010年10月18日 1:29
    モデレータ
  • urashima-taro さん、

    こんにちは。
    フォーラム オペレーターの服部 清次です。

    urashima-taro さんがこちらの質問を投稿されてから少し経ちましたが、その後の状況はいかがでしょうか?
    Murashima Syuichi さんと弊社の三沢健二の回答は、ご確認いただけましたでしょうか?

    urashima-taro さんの現在の状況が気になるところなのですが、、、今回、確認ポイントおよび参考情報として、Murashima Syuichi さんと弊社の三沢の回答を役立てていただけるのではないかと思いましたので、
    勝手ながら、ひとまず私の方で [回答としてマーク] させていただきました。

    また何か困ったことがありましたら、ぜひ TechNet フォーラムをご利用ください。
    今後とも、よろしくお願いします。
    それでは、また。


    __________________________________________________
    マイクロソフト株式会社 フォーラム オペレーター 服部 清次

    2010年10月26日 4:17
  • その後さまざまなテストを実施しましたが、ログオフした状態では何をどうやっても正常に動作することはありませんでした。

    が、Windows 2003 Serverであれば(ログオフ状態でも)タスクの実行はすべて行われることが確認できており、

    Windows 2008 Server 固有の問題と思われます。

    (SP1で解消するかな?と思い、一縷の望みをかけて適用しましたが、まったく効果はありませんでした。)

    SP2の適用で解消しうる問題なのか、それとも「仕様」として葬られてしまうのかはわかりませんが、業務に多大な影響を

    与えていることは間違いないので、2003環境に切り替えての運用とせざるを得ない状況です。

    ※2003で問題なく稼働していたファイルを2008に移植しただけで動かなくなるとは・・・

    2011年4月15日 8:32
  • はじめまして、こんばんわ。
    urashima-taroさんが指摘しておられますが、
    やはり、現状、Windows 2008 Serverにおいて、
    「ユーザーがログオンしているかどうかにかかわらず実行する」 オプションが選択されている場合、
    タスクを対話的に実行させることは無理なのでしょうか?
    私の場合、ジョブスケジューラで、あるアプリケーションをある時刻に起動するよう設定しました。
    起動されたと思われる時刻の後、リモートデスクトップでログインして確認すると、
    処理的には、「正常に処理されました」とログ出力されていますが、
    立ち上がっているはずのユーザー・インターフェースを確認することができません。
    以上、よろしくお願いします。
    2011年6月19日 16:44
  • はじめまして。
    少し、前回からの書き込みからタイミングがずれていますが私も同乗させてください。

    こちらの課題について、皆さんがどのように回避したのかの事例も知れたらと思っています。
    私の携わっているシステムも、Windows 2008 ServerのStandardを利用することになりましたが、
    Windows 2003 Serverでは動作していた、(Excelとの)ログオフ状態での対話処理が出来なくなり対応に困っています。

    urashima-taroさん、yumokinさんなど同様の悩みを持つ方は、どのように対処したのでしょうか?
    ちなみに、私の状態としてはAPサーバーのJavaモジュールから CMDexe → VBScripot → Excel(マクロ)を
    実施する想定が、処理がストップして応答がない状態になっていまいます。
    詳しい状況としては、VBScript起動→Excel起動(←サービスで確認)までは動くのですが
    その後のマクロ実行(Run)にて、処理が応答なしになります。

    ただし、ログオンした状態で、同様のコマンドをCMD.exe上でキックすると想定どおり動作します。

    なお、オペレーターの方からの紹介の  Office のサーバーサイド オートメーションについて では、残念ながら実施できないと考えています。
    理由としては、やりたい作業が、「(既存の画像などが貼り付け済みの)Excelファイルに画像を付加する機能」を実現したいのですが
    こちらの処理をやろうとすると、既存のオブジェクト(コメントや、テキスト、ふきだしなど)を破壊してしまうと考えているためです。(POIや、Java Excel APIなどの弱点)
    って、こちらの話は、置いときましょうね。

    ってことで、どうしても、マクロ起動などで処理をする必要がでてきています。(=対話的処理をログオフ状態で起動したい!)
    今思いつくところとしては、以下を想定しています。
    1.Serverをダウングレードさせる。(← Serverの延長サポート期間が2015年までだと思うので非現実的)
    2.別なWindows2003Serverを追加で構築して、そちらにこの処理だけを委譲して、出来上がったファイルを戻してもらう。
      (↑ ネットワークを介するので、余計なリスクが増えて、少し不安。また、サポートの問題は残る。)
      ※別筐体にするか、VMWareなどを駆使するかは要検討
    といったところです。
    他にも、こういった回避が出来るはず!
    などの情報がありましたら、お知恵を拝借できればと思います。

    可能であれば、無駄な予算をかけず、WindowsServer2008だけで解決できればと思っています。

    ※補足情報 : ドメインには所属していません。
              オートログイン設定でサービスを立ち上げて、上記処理を実施してみましたが、こちらも残念ながら同様の結果となりました。
              UACの無効化もしてみましたが、同様の結果となりました。

    2012年2月15日 11:57
  • 回答済みがついてしまっているから、参照されていないためかもしれませんが
    フォーラム オペレーターの方からの反応もなさそうですので、
    対話的処理をログオフ状態で起動したい!
    の実現が、Windows 2008 ServerのStandardからは、閉鎖されてしまった。
    と判断せざるを得ないようですね。

    これからもちょくちょく覗きますので、何か解決側を見出した方がいらっしゃいましたら
    ぜひともご教授頂けたらと思います。

    私のほうでは、一旦、別の起動案を検討していくことと致します。

    せめて、この課題が、回答済み扱いされてなければいいのに。。。なんて思いました。。。

    2012年2月20日 5:33
  • 私も同じ現象ではまりました・・・
    USフォーラム探して、現象改善しました。
    
    環境: Windows Server 2008 R2 Standard
    
    現象:
    vbs単体では問題なく動作しますが、タスクスケジューラで「ユーザーがログオンしているかどうかにかかわらず実行する」で
    設定をすると、タスクは起動するが、処理がストップして応答がない状態
    (wscript.exe起動するも動作せず)になってしまいます。
    
    対処:
    タスクスケジューラの【操作の編集】の 【開始(オプション)(T)】に、vbsが存在しているフォルダを入力する。
    
    Ex. c:\test\test.vbs を実行させたい場合、【開始】の項目に、 c:\test\ と入力
    
    参考USフォーラム:
    http://social.technet.microsoft.com/Forums/en/winservermanager/thread/d47d116e-10b9-44f0-9a30-7406c86c2fbe
    
    
    

    • 編集済み emyu 2012年2月22日 15:42
    2012年2月22日 15:40
  • emyuさん

    はじめまして。反応頂き、嬉しい限りです。

    私も、VBScriptが正常に動くところまでは確認してるんですよ~。

    ダメなのはその後のEXCEL(マクロ)のOFFICE製品起動なんですよね。

    なので、ログオフ状態でのUIを利用する機能を動かしたい感じなのです。

    このトピック(タスクスケジュールの観点)と少し離れた内容になってるのかもしれませんね。

    yumokinさんのカキコミに便乗しちゃってますので。

    かといって、、、あまり、質問を乱立させてはいけないかなと思い、ここに書いてるんですよ~。

    引き続き、何か情報をお持ちでしたらご教授くださいませ!!

    2012年2月23日 7:21
  • KURONEKO0808さん

    以下のフォルダを作成してみて下さい。

    C:\Windows\SysWOW64\config\systemprofile\Desktop

    ↑のフォルダ名で検索すれば、いくつかのサイトがヒットするかと思います。

    2012年9月25日 0:53
  • こちらのフォーラム参考になりました。皆さんも困ってらっしゃるのですね。

    当方の環境でも、同様に、タスクとしてログオフ状態でエクセル操作エラーとなります。

     <OS環境>

        Windows 2008 Server R2 Standard

        および Windows7

     <実行タスクとしたプログラム>

       ActivePerl で記述した OLEオートメーション(Win32::OLE) でエクセルを操作しています。

    当方でも Windows2003Server Enterprise で運用していた実行タスクなので

    エクセル帳票を自動生成できないというのは、仕事にも影響を及ぼす状況で

    途方にくれています。

    なにか名案はないものでしょうか?

    2012年10月2日 4:15
  • 自分も同様の現象が出て困っています。

    ■環境

    OS:Windows Server 2012

    内容:タスクスケジューラでExcelを使用するExeを実行

    ■状況

    WindowsServer2003では動作する。

    WindowsServer2012でも、タスクスケジューラではなく普通に実行すると正常に動作する。

    WindowsServer2012のタスクスケジューラでも、『ログインしているときのみ実行する』だと正常に動作する。

    『ユーザーがログオンしているかどうかにかかわらず実行する』にするとログイン/未ログインにかかわらず失敗する。

    ■異常内容

    filenameにアクセスできません。次のいずれかの理由が考えられます。

    ファイル名またはパスが存在しません

    ファイルが他のプログラムによって…

    ■ソース

    objApp = new Application();

    // 『ユーザーがログオンしているかどうかにかかわらず実行する』にする場合、

    // ↓これがないとobjBooks.Openでフリーズします。これがあると、異常内容の通りになります。

    objApp.DisplayAlerts = false;

    objBooks = objApp.Workbooks;

    objBook = objBooks.Open(filename,0,

     true,Type.Missing,Type.Missing,Type.Missing,

     false,Type.Missing,Type.Missing,Type.Missing,

     false,Type.Missing,Type.Missing,Type.Missing,Type.Missing);

    ■備考

    既にご教授頂いている以下の件は対応済です。

    C:\Windows\SysWOW64\config\systemprofile\Desktop

    以上、よろしくお願いします。

    2013年8月21日 6:29
  • 自レス

    Office のサーバーサイド オートメーションについて
    http://support.microsoft.com/kb/257757/ja

    で、動きませんよって言ってますね…。

    2013年8月21日 23:38