質問: **【背景】** Windowsのタスクスケジューラに、タスクの新規作成 / 削除を行うプログラムを作成しようと思っています。 その際、使用する言語は、Javaを考えています。 もし、何かしら情報を持っている方がおられましたら 教えて頂けると助かります。 **【目的】** Windowsのタスクスケジューラに、タスクの新規作成 / 削除を行うプログラムを作成する。 **【環境】** [OS] Windows7 Pro 64Bit 日本語OS **[Java]** Java7 Update72 32Bit ※開発環境の為、変更は出来ないです。 **[Eclipse]** 3.3.2 Java ETL Eclipseは、下記のURLから取得しています。 URL:http://mergedoc.osdn.jp/ ※開発環境の為、変更は出来ないです。 **【質問】** 1.Javaを利用して、Windowsのタスクスケジューラに、タスクの新規作成 / 削除を行う事は可能でしょうか? ※ 可能でしたら、参考となるホームページ又は、書籍を教えて貰えると助かります。 2.Java(jni)を利用して、Windowsのタスクスケジューラに、タスクの新規作成 / 削除を行う事は可能でしょうか? ※ 可能でしたら、参考となるホームページ又は、書籍を教えて貰えると助かります。 3.他の言語で、タスクの新規作成 / 削除を行う場合、どの様な言語を使用できるか教えて欲しいです。 **【備考】** 特に無いです。
回答: 私も似たことをやったことはありますが、あまりJavaでやるような内容ではないので、正しいか分かりませんが、回答します。 > > 1.Javaを利用して、Windowsのタスクスケジューラに、タスクの新規作成 / 削除を行う事は可能でしょうか? > > ※ 可能でしたら、参考となるホームページ又は、書籍を教えて貰えると助かります。 > > > Javaネイティブではできません。特に有名なライブラリもなかったと思います。 SchTasksコマンドをProcessBuilderなどで実行して、管理する事はできます。この場合は、SchTasksコマンドの使い方さえ抑えておけば大丈夫です。 technet > > 2.Java(jni)を利用して、Windowsのタスクスケジューラに、タスクの新規作成 / 削除を行う事は可能でしょうか? > > ※ 可能でしたら、参考となるホームページ又は、書籍を教えて貰えると助かります。 > > > netapi32.dllをロードして、NetScheduleJobAddやNetScheduleJobDelなどのAPIを使うことで実現可能です。 この場合もAPIの使い方を抑えておけば可能です。 MSDN > > 3.他の言語で、タスクの新規作成 / 削除を行う場合、どの様な言語を使用できるか教えて欲しいです。 > > > .NetFrameworkや、COMが使えればVBでもC#でもVC++でも可能です。 どうしてもJavaでやる必要があるならば、JNIはやたら面倒くさいので、1のやり方が無難だと思います。 後はやはりPowerShellが簡単でしょうか。 http://tech.guitarrapc.com/entry/2013/09/03/200909