タスクスケジューラでbatファイルを動かしたい

このQ&Aのポイント
  • Biosにタイマー機能がないノートPCを、遠隔PCからタスクスケジューラを使ってWakeOnLanで起動させることにより、タイマー起動のようなことをしようかと思い立ちました。
  • タスクスケジューラに登録したWakeOnLanのbatファイルが起動しない問題が発生しました。手動では起動するので、タスクスケジューラのバッチファイルの実行に何か問題があるのかもしれません。
  • Windows10のタスクスケジューラとWindows7のタスクスケジューラにはいくつかの違いがあります。また、batファイルを動かす場合にはカレントディレクトリの位置に気をつける必要があります。絶対パスの指定などを試してみてください。
回答を見る
  • ベストアンサー

タスクスケジューラでbatファイルを動かしたい

Windows10とWindows7を使っています Biosにタイマー機能がないノートPC(Windows7)を、遠隔PC(Windows10)からタスクスケジューラを使ってWakeOnLanで起動させることにより、タイマー起動のようなことをしようかと思い立ちました。 http://plaza.rakuten.co.jp/mscrtf/diary/201210120000/ こことほぼここと同じことを考え ・コマンドでMagicPacketを送れるソフト(MagicSend)を探しだし ・MagicSendと同一ディレクトリ内にWakeOnLanのbatファイルを作って配置し ・そのWakeOnLanのbatファイルをタスクスケジューラに登録 したところ、起動に失敗しました。 ・WakeOnLanのbatファイルを手動で動かすと起動する ・WakeOnLanのbatファイルにストップウォッチソフト起動コマンドを追加してみたところ、手動ではWakOnLanもストップウォッチも起動するが、タスクスケジューラでは起動しない ところから、タスクスケジューラがバッチファイルの実行に失敗しているのではないかと思います ここから先がわからなくなりました この場合、どこを疑うべきでしょうか? Windows10のタスクスケジューラはWindows7とは違う点があるとか、タスクスケジューラでbatファイルを動かす場合はbatファイル内に記述するコマンドのカレントディレクトリの位置に気をつけなくてはならない(絶対パスを指定すべし?)とか、その他ありますか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

バッチファイルの先頭行に半角英文字で === cd /D %~dp0 ===この一行 を追加してみてください。

参考URL:
http://www.love-hokuto.com/?p=1248

その他の回答 (3)

  • 2012tth
  • ベストアンサー率20% (1889/9435)
回答No.4

Windows 7 Pro 32bit → Windows 10 Pro 32bit にした者です。 まず前提として… Windows 10 は、ソフトウェア用の制御用プログラムを搭載していません。 ✳ソフトウェアを OS の制御下に置いて居ませんが… PC に接続されている ハードウェアを OS の制御下に置いています。 Windows 7 は、ソフトウェア用の制御用プログラムを標準で搭載しています。 ✳ソフトウェアを OS の制御下に置いている反面、ハードウェアを OS の制御下 に置いていません。 > Windows10のタスクスケジューラはWindows7とは違う点があるとか 基本的に同じモノですが先に述べた通りで、Windows 10 は、ソフトウェア用の 制御用プログラムを搭載していないので?従来のタスクスケジューラと同じ事が 出来ません。

  • kteds
  • ベストアンサー率42% (1876/4424)
回答No.2

batを手動で動かすと動作しているわけですので、実行内容はOKだと思います。 タスクスケジューラの設定で「最上位の特権で実行」してみてはどうでしょうか。 添付画像参照。

GrandCahier
質問者

お礼

別な方法で解決しましたが、ありがとうございました。

  • nabe3desu
  • ベストアンサー率46% (253/550)
回答No.1

タスクスケジューラーは、Windows上で動作させる仕組みです。PCの起動は、Windowsが起動する前の動作になるので、Windows上でPCを起動させることは根本的に無理なのです。再起動は別ですが... また、WakeOnLanのパケットはブロードキャストパケットなので、ルータ超えの環境では起動させることができません。この解決方法としては、 1.WakeOnLanの機能を搭載したルータに置き換える 2.LAN側に常時起動させておくPCを用意し、このPCにリモート接続してノートPCを起動させる しか方法はありません。

関連するQ&A

  • タスクスケジューラからのバッチ起動

    タスクスケジューラからのバッチ起動で動作せず困っております [環境] ・windows server 2008 システムディスク:C ・共有ディスクをLANにて接続 ネットワークドライブとしてD:に設定 [動作概要] ・バッチ(*.vbs,*.bat)、データ、ログをD:に配置 ・タスクスケジューラに*.vbsを登録 ・*.vbsからD:にある*.batを起動(WScript.Run) [事象] ・*.vbsをGUIよりダブルクリック/エンターキーでは問題なく起動 ・*.vbsをタスクスケジューラから起動するととまってしまう ・*.vbs内の*.batコール箇所をコメントして実行で動作は最後まで終了 ・*.bat単体で動作させても問題なく終了 ・*.batをタスクスケジューラで起動するととまってしまう *.bat内で(>D:)などのディレクトリ移動コマンドを入れてもとまってしまう [原因推測] ・タスクスケジューラからネットワークドライブが認識できない? ・*.vbsで実施するWScript.Runの実行者がsystemで、 ネットワークドライブの認識用の環境情報(unixでいうcshrcみたいなもの)を 読み込まないで動作する? [問] ・上記構成では動作ができないのでしょうか? ・実現可能な方法があればヒントでもほしい 大変複雑な内容になって申し訳ありませんが 何か察することがあればコメントください

  • タスクスケジューラに登録するとvbsからエクセルマ

    タスクスケジューラに登録するとvbsからエクセルマクロが起動しない。 wiodowsのタスクスケジューラでbatを起動し、batからvbsを起動し、vbsからエクセルマクロを起動するバッチを作ったのですが、エクセルマクロが起動しません。 batをダブルクリックした場合は問題なく動くのですが、タスクスケジューラから手動起動したり、時間を指定した場合は動きません。 このときタスクマネージャのプロセスにはwscript.exeはいましたがEXCEL.EXEはいませんでした。 タスクスケジューラで起動するときに特に気をつけることはあるでしょうか?

  • BATファイル実行にフォーカスを当てたい

    Windows2008サーバにRDPでWindows7から実行しています。 サーバにBATファイルを作成し、(XCOPYコマンド)データのバックアップを行います。 この時ですが、クライアント(Windows7)で実行させたBATファイルですが(コマンドプロンプト)画面が なぜか背面にかくれてしまい、BATの実行内容がみれなくなることがあります。また、BATの終了時に、正常終了かどうかの表示を行い、Pauseコマンドで止めていますが、これが、背面にかくれてしまい、いつ終ったのかわからない状態です。ずーっとBAT自動されたコマンドプロンプトの表示にフォーカスを当てたいのですが、BATに記述することにより、再度フォーカスを取り戻すようなコマンドはあるでしょうか?よろしくお願いします。

  • dosのbatファイルでvssを動かしたいです。

    dosのbatファイルでvssを動かしたいです。 ただvssのパスとオプションを書いて次の行にexitを書くだけではダメなのでしょうか? そのbatファイルをタスクスケジューラで登録しようと思います。 windows 7 ultimateです。

  • batファイルでrenameができません。

    Windowsのbatファイルでrenameをするにはどうすればよいでしょうか? カレントディレクトリ └ A というディレクトリ構造があって、Aの中には「a.txt」があるとします。 カレントディレクトリから、 「rename "./a/A.txt" B.txt」 と書いてあるbatファイルを起動しても、「a.txt」の名前が変更されません。 「指定したパスが見つかりません。」と出てきてしまいます。 ダブルクォーテーションを取ったりつけたり、絶対パス、相対パスを書いたりと いろいろ試しましたがだめでした。 何か方法はないでしょうか?

  • CMD起動用BATファイルの作成依頼

    いつも起動するコマンドプロンプトが決まっている場合   CMDを起動後に同じコマンドを手動入力するのではなく自動でコマンドのみ入力して   次に必要なパラメーターを手動入力又はコピペで入力するようにしたいです。   (パラメーターのリストをテキストファイルで作成しておいてそこから必要な個所を    コピペしたい) 上記目的のために、BATファイルをデスクトップに作成したいと思います。 例えば,   C:\Users\Pon_\ZET01.exe -ght だとして BATファイルを起動するとコマンドプロンプトが起動して C:\Users\Pon_\ZET01 のところまでは自動的にタイプインされていて 後の-ghtを入力できるようにカーソールが移動して停止状態となる。 そこで、-ghtをコピペ(又は手動入力)して リターンキーを押すとCMDが実行されるような感じです。 近頃、まったくBATファイルを作成することが無く スキルが退化してしまいました。 すいませんが、希望のようなBATファイルを作成をお願いします。

  • タスクスケジューラからショートカットを起動させるには?

    タスクスケジューラから起動するのに、プログラムのショートカットを登録したいのですが、登録できません。 ショートカット名:aaa.bat リンク先:bbb.bat タスクスケジューラの実行するファイル名に「参照」で登録すると、ショートカット名が[aaa.bat.lnk]と.lnkの拡張子が表示され、実際の実行するファイル名には、ショートカットではなく、リンク先(bbb.bat)が表示されてしまいます。 また、直接ショートカット名[aaa.bat]と記述すると、登録できても実行されません。 そもそも、ショートカット経由してタスクスケジューラに登録したい理由は、プログラム実行時に最小ウィンドウ(バックグラウンド)で実行したいためです。 どのようにすれば、ショートカットをタスクスケジュールに登録できるか、ご教授ください。

  • batファイルを最小化で実行するにはどうしたらいいでしょうか?

    batファイルを最小化で実行するにはどうしたらいいでしょうか? windows 7でタスクスケジューラにbatファイルを登録しています。 windows2000ではショートカットを登録して、ショートカットのプロパティの実行時の大きさを“最小化”にすると最小化のまま実行できたのですがwin 7でどうしたらいいかわかりません。 1時間に一度実行するようにしたいので見えない方法で実行する方法を教えてください。

  • BATファイル起動について

    お世話になっております。 javaのclassを実行する 以下の処理を行うbatファイルを作成したところ (ディレクトリ移動→classpathの設定→javaコマンド) cmd.exeよりこのbatファイルを実行すると 正常に動作してくれるのですが batファイルをダブルクリックすると javaを正常に実行しません。 errorや例外も特に発生していません。 batファイルを cmd.exeからの実行するのと ダブルクリックで実行するのには 何か違いがあるのでしょうか? よろしくお願いします。

  • php にてbatファイルを起動

    php にてbatファイルを起動もしくはコマンドプロンプトにコマンドを送りたいのですができますでしょうか?

    • ベストアンサー
    • PHP