• 締切済み

タスクスケジューラからの起動

Windowsのタスクスケジューラから.exeを起動する場合と、普通に(アイコンをクリックして)起動する場合とで、違う処理をしたいのですが、プログラミングサイドから判別するにはどうしたらよいでしょうか??

みんなの回答

  • akinori_s
  • ベストアンサー率60% (21/35)
回答No.2

タスクスケジューラ側では登録したタスクのプロパティで 実行するファイル名を「アプリケーション名.exe」となっている ところを「アプリケーション名.exe /TSK」 とでも変更して プログラム側ではmain関数もしくはWinMain関数で受け取る コマンドライン変数を見て"/TSK"が記述されているか判断すれば いいんじゃないでしょうか。 PS /TSKは例なので何でもいいです

  • akinori_s
  • ベストアンサー率60% (21/35)
回答No.1

タスクスケジューラにプログラムを登録する際にパラメータを設定しては どうでしょう? プログラム側では起動時パラメータが指定された場合にはタスクスケジューラ からの起動とすればいいと思います。

Hide77
質問者

補足

回答どうもありがとうございます。 何でも聞いているようで申し訳ありませんが、パラメータ設定の方法と、どういう形でプログラム起動時にその値を判別すればいいのかよくわかりません。

関連するQ&A

  • タスクスケジューラでAccessの起動

    Windows7,Access Runtime2010の環境で,タスクスケジューラを設定してAccessのソフトを自動起動し,処理をさせようと考えていますが,タスクスケジューラに『%1 有効なWin32アプリケーションではありません』と 表示されて,Accessが起動されません。 Access2010がインストールされている環境でも,起動されません。 起動するファイルをAccess以外(例えば.txtや.xlsx)に設定した場合は問題なく起動されます。 また,XPでAccessRuntime環境で実行したところ,問題なくAccessが起動されました。 Windows7ではなぜ,タスクスケジューラからAccessが起動できないのでしょか?

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

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

  • タスクスケジューラで起動、タスクトレイにアイコン

    Windows Server 2008 R2を利用しています。 普通にダブルクリックで起動すると、タスクトレイ(タスクバー右端)にアイコンが常駐するアプリがあります。 これを、サーバ起動時に実行したいため、タスクスケジューラでシステム起動時に実行するよう設定しました。 しかし、再起動しログオンしてみると、プロセスは起動しているのですが、アイコンがタスクトレイに表示されません。 スタートアップフォルダにショートカットを入れるのは試してみたのですが、それだとログオン時に実行なので、ちょっと求めているものとは違いました。 再起動時に自動実行し、かつタスクトレイにアイコンが常駐するような設定方法はございますでしょうか。 よろしくお願いいたします。

  • タスクスケジューラでバッチを起動させたい

    環境:Windows2008Serv. マイドキュメント配下にあるバッチをタスクスケジューラで 毎日一回起動させようと思っていますが、 思ったとおりの動作をしてくれません。 バッチの中身はWindowsのイベントログをテキストファイルに 吐き出すものです。 吐き出すテキストファイルはDドライブを指定しています。 バッチファイルを直接たたくと、Dドライブの指定の場所で テキストは作成されているのですが、 タスクスケジューラで指定した時刻が来ても、 テキストは作成されません。 タスクスケジューラの履歴を見ると、バッチ起動とバッチ完了と いう履歴が残っています。 又、タスクスケジューラから、作成したタスクを右クリックして 『実行』して見ても、履歴はきちんと完了までなっていますが、 実際には、テキストが作成されません。 開始オプションも色々なパスを試しましたがだめでした。 どなたか、タスクスケジューラでバッチを起動させる方法の分かる方 いらっしゃいませんか。

  • タスクスケジューラを利用して実行

    以下の二つの方法でシステムを起動して処理を開始したいのですが、どうすればよいのでしょうか? (1)Windowsのタスクスケジューラを利用してシステムを自動起動後、処理開始 (2)システムを手動起動後、ボタンをクリックすることで処理開始 起動直後に処理開始としてしまうと手動起動したときに都合が悪いし、 ボタンをクリックしたときに処理開始とするのも都合が悪いのです。 自動起動か手動起動か見分けて処理開始をさせればいいのかなと考えたのですが、 そのようなことは可能なのでしょうか? また、他によい方法がありましたら教えてくださいm(__)m

  • タスクスケジューラでEXEが動かない

    教えて下さい。 あるEXE(VisualSutudiio2005でつくった)を、 タスクスケジューラで自動実行させようとしたのですがうまく動きません。 (スケジューラからバッチファイルを起動してバッチファイルないでEXEを起動しています) 正常に終了したかのうように終わってしまいます。 ※バッチファイルを普通に実行した場合は正常に動作します。 何が原因なのでしょうか? どうすれば自動実行できるようになるのでしょうか? よろしくお願い致します。

  • タスクスケジューラを起動させない方法は?

    Windows98(4.10.1998)+IE5.5を使用しています。起動時にタスクスケジューラを起動させない方法を教えてください。過去の質問も調べてみましたが下記内容が一致しないため質問します。 *タスクを起動して詳細メーニューで「タスクスケジューラの使用停止」をしても次回また起動してしまう。 *システム設定ユーティリティ(msconfig)のスタートメニューにScheduleAgentという項目がない。

  • WinSCPがタスクスケジューラで起動しません

    WinSCPを使って、レンタルサーバー内のファイルのローカルへの自動バックアップを試みています。 バッチを作成し、ダブルクリックで起動させるとうまくいくのですが、自動化のためにタスクスケジューラに登録するとうまく動作しません。 まず、 『backup.bat』というバッチを作成しました 中身は、 "C:\Program Files (x86)\WinSCP\WinSCP.exe" test@sample.jp /console /script=.\backup.script です。 『backup.script』の中身は open test:password@sample.jp cd /var/www/html/bactest lcd "C:\Users\○○○○\Documents\backupテスト\backup" synchronize local -delete close exit です。 backup.batをタスクスケジューラに登録し実行時間になると、backup.batの中身が一瞬表示された後消えてしまいます。 履歴にはbackup.batを開始した後、cmd.exeを起動し、操作を完了しました、となっています。が、実際はローカルのファイルは同期されていません。 あまり詳しくないため問題点が分かりません。 ローカル環境はWindows7です。 上記の記述に誤りがあるのでしょうか? 使用方法が根本的に間違っているのでしょうか??

  • タスクスケジューラで

    タスクスケジューラの「条件」タブで「タスクを実行するためにスリーブを解除する」 にチェックを入れても設定した時間に実行されません。 PCが起動してる場合はタスクスケジューラは普通に実行できます。 他に、スリーブ解除の設定方法ありますか。 ご教示ください。 win10.64bit.pro

  • タスクスケジューラで自動再起動

    24時間起動しているPCをタスクスケジューラで自動的に再起動したいのですが、何か良い方法は無いでしょうか。 OS:Windows 7 Pro 64bit メディアサーバ、録画サーバを構築しているのですが、どうもWindows XPの頃よりも安定しませんで、ふと気付くとフリーズしていたなんて事が多々あります。 安定性を維持する為に「毎日○時に再起動」と言う事を行いたいのですが、何か良い方法をご教示頂け無いでしょうか。 ※代替案であれば必ずしもタスクスケジューラで無くても構いません。