Salut
je veux réaliser une application qui exécute une fonction quotidiennement à une heures précise sans passer par le planificateur de Windows, y a t il une classe qui le permet ou dois je le programmer?
merci d'avance
Salut
je veux réaliser une application qui exécute une fonction quotidiennement à une heures précise sans passer par le planificateur de Windows, y a t il une classe qui le permet ou dois je le programmer?
merci d'avance
Bonjour,
Tu peux utiliser la classe TimerCallback pour effectuer des exécutions régulières. Mais de toute façon, il faut que ton programme fonctionne en tâche de fond, soit par le biais d'un Add-On d'un programme lancé et en rapport avec ton application, soit en créant un service Windows (alternative à la tâche planifiée).
J'espère n'avoir pas répondu à côté de ta question.
Fran
Salut
Merci Pour la suggestion, ça à bien marché, mais le problème c'est que modification de l'heure du système n'est prise en compte une fois le timer est lancé.
y a t il une solution pour remédier à ce problème?
Salut
est ce que vous pouvez m'indiquer comment exécuter une methode déclarée dans la même classe avec TimerCallBack
En argument tu passe une méthode compatible avec la signature du CallBack ou tu utilise simplement une méthode anonyme (ou une expression lambda si c'est du C#3).
Salut
Pouvez vous m'expliquer la signification de la compatibilité
Une méthode qui corresponde correctement à la signature du CallBack.
Exemple:
L'exemple ci dessus ne tient pas compte de la covariance ni de la contra-variance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 using System; namespace ApplicationTest { public delegate void TestCallBack(int nb, string chaine); public class Program { public static void Main() { //On passe par une méthode CallBackMethod(Method); //On passe par une méthode anonyme CallBackMethod(delegate(int nb, string chaine) {Console.WriteLine("Nombre:{0}, chaine:{1}",nb,chaine);}); //On passe par une expression lambda CallBackMethod((nb, chaine) => Console.WriteLine("Nombre:{0}, chaine:{1}",nb,chaine)); } public static void CallBackMethod(TestCallBack callBack) { callBack(10,"chaine"); } public static void Method(int nb, string chaine) { Console.WriteLine("Nombre:{0}, chaine:{1}",nb,chaine); } } }
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager