2

タスクスケジューラを作成し、そのトリガー時間を固定に設定しました(例:毎日-午後5時)が、システムの起動時または起動時にそのイベントをトリガーしたいと思います。例があれば、コードを手伝ってください。

前もって感謝します。

コード:------------------------------------------------ ----------

 public static void CreateTask()
        {
            using (TaskService task = new TaskService())
            {`enter code here`
                TaskDefinition taskdDef = task.NewTask();

                taskdDef.RegistrationInfo.Description = "Does something";
                taskdDef.RegistrationInfo.Documentation = "http://www.mysite.com";

                taskdDef.Settings.ExecutionTimeLimit = new TimeSpan(0, 10, 0);
                taskdDef.Settings.AllowDemandStart = true;

                taskdDef.Actions.Add(new ExecAction(@"D:\Myfolder\bin\SGSclient.exe", "yourArguments", null));
                task.RootFolder.RegisterTaskDefinition("YourTask", taskdDef);
            }
        }
4

4 に答える 4

12

GitHub のタスク スケジューラ マネージャー ライブラリを使用すると、次のように記述できます。

using System;
using Microsoft.Win32.TaskScheduler;

class Program
{
   static void Main(string[] args)
   {
      // Get the service on the local machine
      using (TaskService ts = new TaskService())
      {
         // Create a new task definition and assign properties
         TaskDefinition td = ts.NewTask();
         td.RegistrationInfo.Description = "Does something";

         // Create a trigger that will fire after the system boot
         td.Triggers.Add(new BootTrigger() );

         // Create an action that will launch Notepad whenever the trigger fires
         td.Actions.Add(new ExecAction("notepad.exe", "c:\\test.log", null));

         // Register the task in the root folder
         ts.RootFolder.RegisterTaskDefinition(@"Test", td);

         // Remove the task we just created
         ts.RootFolder.DeleteTask("Test");
      }
   }
}
于 2012-05-31T12:13:30.957 に答える
1

開始タスクとしてレジストリに追加できます。ここを参照してください。

于 2012-05-31T11:53:51.313 に答える
1

2000、XP

スタート -> 設定 -> コントロール パネル -> スケジュールされ
たタスク タスクのプロパティを開きます。
「スケジュール」タブを開きます。
[タスクのスケジュール] プルダウンから [システム起動時] を選択します。

ビスタ

スタート -> 設定 -> コントロール パネル -> 管理ツール -> タスク スケジューラ タスク
のプロパティを開きます。
[トリガー] タブを開き、トリガーを編集または作成します。
「タスクの開始」プルダウンから「起動時」を選択します。

于 2012-05-31T11:54:37.307 に答える
0

Windowsサービスを作成する必要があります。

于 2012-05-31T11:51:03.217 に答える