Maison >développement back-end >C++ >Comment créer et gérer des tâches planifiées dans les applications C# WPF ?

Comment créer et gérer des tâches planifiées dans les applications C# WPF ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2025-01-25 11:41:09665parcourir

How to Create and Manage Scheduled Tasks in C# WPF Applications?

Planification des tâches dans les applications C# WPF

Les applications C# WPF nécessitent souvent des tâches planifiées pour les opérations automatisées. Ce guide montre comment créer et gérer ces tâches à l'aide du Wrapper géré du Planificateur de tâches.

Configurer votre projet

Tout d'abord, assurez-vous que votre projet comprend les références et les using directives nécessaires :

<code class="language-csharp">using System;
using Microsoft.Win32.TaskScheduler;</code>

Création d'une tâche planifiée : un guide étape par étape

  1. Accéder au service de tâches : Obtenir une référence au service de tâches de la machine locale :
<code class="language-csharp">using (TaskService taskService = new TaskService())</code>
  1. Définir la tâche : Créer une nouvelle définition de tâche :
<code class="language-csharp">TaskDefinition taskDefinition = taskService.NewTask();</code>
  1. Configurer les propriétés de la tâche : Définir les propriétés comme la description :
<code class="language-csharp">taskDefinition.RegistrationInfo.Description = "Automated Task";</code>
  1. Définir le déclencheur : Définissez le moment où la tâche doit s'exécuter. Par exemple, un déclencheur quotidien :
<code class="language-csharp">taskDefinition.Triggers.Add(new DailyTrigger { DaysInterval = 2 }); // Runs every 2 days</code>
  1. Spécifiez l'action : Déterminez l'action de la tâche lors du déclenchement. Cet exemple lance le Bloc-notes :
<code class="language-csharp">taskDefinition.Actions.Add(new ExecAction("notepad.exe", "c:\test.log", null));</code>
  1. Enregistrer la tâche : Enregistrez la tâche dans le dossier racine :
<code class="language-csharp">taskService.RootFolder.RegisterTaskDefinition("MyScheduledTask", taskDefinition);</code>
  1. (Facultatif) Suppression de la tâche : Supprimez la tâche après la création (à des fins de test) :
<code class="language-csharp">taskService.RootFolder.DeleteTask("MyScheduledTask");</code>

Approches alternatives

Bien que le Wrapper géré du Planificateur de tâches soit pratique, d'autres options existent, notamment l'API Windows native et la bibliothèque Quartz.NET. De plus amples détails sur ces alternatives peuvent être trouvés dans les ressources liées (si fournies dans l'exemple de code d'origine).

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn