質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

コマンド

コマンドとは特定のタスクを行う為に、コンピュータープログラムへ提示する指示文です。多くの場合、コマンドはShellやcmdようなコマンドラインインターフェイスに対する指示文を指します。

バッチファイル

バッチファイル(Batch File)は、Windowsのコマンドラインインタープリターによって複数のコマンドを実行させる事が出来るスクリプトファイルです。

Q&A

解決済

1回答

6180閲覧

EXEファイルを呼び出し実行するbatファイルを、タスクスケジューラで起動できない

Yoshitsugu12

総合スコア15

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

コマンド

コマンドとは特定のタスクを行う為に、コンピュータープログラムへ提示する指示文です。多くの場合、コマンドはShellやcmdようなコマンドラインインターフェイスに対する指示文を指します。

バッチファイル

バッチファイル(Batch File)は、Windowsのコマンドラインインタープリターによって複数のコマンドを実行させる事が出来るスクリプトファイルです。

0グッド

0クリップ

投稿2021/05/11 15:35

編集2021/05/11 16:18

##概要
通信速度を計測するexeファイルの起動コマンドを入れているbatファイルを作成し、タスクスケジューラで定期実行させようとしましたがうまくいきませんでした。

##作成したプログラムの内容
EXEファイルの実行結果をテキスト保存させて、保存したテキストファイルへ実行の時間と日時を書き加えるというシンプルなものです。
プログラムを直接実行するとEXEファイルの実行も含めて正常に動作します。

##具体的にどう動かなかったのか
・batファイル本体を直接実行すると正常に動作する。
・タスクスケジューラの定期実行と手動実行ではEXEファイル実行の工程が動かない。
目で見える形のエラーなどはないが、作成されたファイルを見てもEXEファイルの実行結果の記述がないことから動かないと判断している。しかし、時間と日時のテキストは作成されているのでbatファイルそのものは動いていることがわかる。

###batファイル

cd c:/speedtest2 speedtest.exe > list/%date:~0,4%-%date:~5,2%-%date:~8,2%.text echo mesured_date %date:~0,4%/%date:~5,2%/%date:~8,2% >> list/%date:~0,4%-%date:~5,2%-%date:~8,2%.text echo DATETIME %TIME:~0,5% >> list/%date:~0,4%-%date:~5,2%-%date:~8,2%.text

※補足
speedtest.exeは通信速度を測定するプログラムです。
自分で作成したものではなく、ここからインストールしてそれを利用しております。

■正常時の出力結果

Speedtest by Ookla Server: ●● ISP: ●● Latency: 3.39 ms (0.13 ms jitter) Download: 94.35 Mbps (data used: 70.7 MB) Upload: 94.28 Mbps (data used: 47.5 MB) Packet Loss: Not available. Result URL: https://~~ mesured_date 2021/05/11 DATETIME 23:42

■タスクスケジューラで実行したときの出力結果

mesured_date 2021/05/11 DATETIME 23:42

##タスクスケジューラの設定
■全般設定
セキュリティオプション:最上位特権
構成:Windows10
■トリガー
毎日24:00に起動 トリガーされた後、1日の5分ごとに繰り返し実行
■ 操作
プログラムの開始を選択
開始オプションにカレントディレクトリを入力済み
■条件
チェックをすべて解除
■設定
以下にチェック済み
・タスクを要求時に実行する
・スケジュールされた時刻にタスクを開始できなかった場合、すぐに実行する
・タスクが失敗した場合の再起動間隔->1分
再起動思考の最大数->3回

##環境
Windows10

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

otn

2021/05/11 16:13 編集

> EXEファイル実行の工程が動かない。 と判断した理由となる具体的な現象を書いてください。
otn

2021/05/11 16:07

> ・batファイル本体を直接実行すると正常に動作する。 とのことですが、 > セキュリティオプション:最上位特権 なので、通常のコマンドプロンプトでなく、「コマンドプロンプト(管理者)」で実行しましたか?
Yoshitsugu12

2021/05/11 16:22

otnさん いいえ、通常のコマンドプロンプトとして実行して成功しております。 もちろん、管理者として実行しても成功しております。
xail2222

2021/05/11 17:41 編集

(関係なさそうなコメントでしたので削除)
guest

回答1

0

ベストアンサー

疑われるのは権限とpathですね。
特にpath
1.ログインして直接実行
2.ログインしてWindowsタスクを実行
3.ログインせずWindowsタスクを実行
で環境変数が違う可能性があるので、.batファイルで必要なpathをしっかり書くか、さもなくば.exeをフルパスで書くか。

それも大丈夫なら…ログを取りましょう。そうすれば何かがわかるかもです。
プログラム/スクリプトはcmd
引数は/c C:\your\script.bat > C:\your\log\folder\log.txt 2>&1

投稿2021/05/11 16:24

itagagaki

総合スコア8402

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Yoshitsugu12

2021/05/11 17:06

試行錯誤しまして、 最終的にログをとって何もかもわかりました。 タスクスケジューラでバッチを動かし、EXEファイル実行コマンドの結果に以下のようなものが返ってきていました。 ============================================================================== You may only use this Speedtest software and information generated from it for personal, non-commercial use, through a command line interface on a personal computer. Your use of this software is subject to the End User License Agreement, Terms of Use and Privacy Policy at these URLs: https://www.speedtest.net/about/eula https://www.speedtest.net/about/terms https://www.speedtest.net/about/privacy ============================================================================== To accept the message please run speedtest interactively or use the following: speedtest --accept-license そこでバッチのコマンドを speedtest --accept-license  ​> list/%date:~0,4%-%date:~5,2%-%date:~8,2%.text にすると問題なく実行できました。 1人では間違いなくたどり着けませんでした。 ありがとうございました!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問