0

特定のファイルをバックアップする Windows フォーム アプリケーションがあります。通常、「バックアップ開始」ボタンを押すと、プログラムはオプションとして選択されたものを実行します。

今、私はタスク スケジューラ DLL を介して、datetimepicker オブジェクトを介して希望する日時にバックアップを実行する機能を実装しました。

これまでのところ、programm.exeをWindowsに登録する方法を見つけただけで、選択した時間に起動します。

私の質問は、自動化またはスクリプトを介して「バックアップの開始」ボタンを実行できるようにするにはどうすればよいでしょうか? プログラムに必要な他のすべてのパラメーターは、Settings.Default 値に保存されます。

タスク スケジューラからのコード、おそらく問題を解決するためのより短い方法がありますか?

        private void futureBackup_Click(object sender, EventArgs e)
    {
        dateTimePicker1.Format = DateTimePickerFormat.Time;
        TaskService ts = new TaskService();
        TaskDefinition td = ts.NewTask();
        Trigger t = new TimeTrigger();
        t.StartBoundary = System.DateTime.Now.Date
        +this.dateTimePicker1.Value.TimeOfDay;
        td.Triggers.Add(t);
        string path1 = Desktop + @"\Desktop\Release\Backup.exe";
        td.Actions.Add(new ExecAction(path1, null, null));
        ts.RootFolder.RegisterTaskDefinition("XBackupX", td);
        ts.BeginInit();
    }

Visual Studio で UI オートメーションを見つけましたが、それが「問題」を解決できるかどうかはわかりません!?!

前もって感謝します

4

1 に答える 1

0

今のところ、私が思いついた最も簡単な方法は、2 つのプログラム exe ファイルを用意することです... 2 つ目は backup_s.exe と呼ばれ、Windows のタスク スケジューラに追加されます。

2 つのコードの唯一の違いは、_s が最後のオプションを xml ファイルから自動的にロードし、トリガー イベントによってバックアップの開始を実行し、1 分後に自動的に終了することです。

于 2013-09-20T09:42:10.807 に答える