c # - skriv et program, der kører i baggrunden og udfører handlinger hver time

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg vil gerne skrive en ansøgning i C #, som kører i baggrunden det meste af tiden. Det skal kun vise en TrayIcon. Til dette fandt jeg en vejledning: http://www.simple-talk.com/dotnet/.net-framework/creating-tray-applications-in-.net-a-practical-guide/[1]


Men hvordan kan jeg fortælle mit program at køre hver time? Hvad er den bedste måde at gennemføre dette på. En timer? App'en skal bruge så lidt som muligt ressourcer, mens du ikke gør noget.


tak

Bedste reference


Spørgsmål: Er programmet et 'brugerrum' -program, eller skal det køre, selvom en bruger ikke er logget ind? Med andre ord skal det altid være på?


Dybest set gør du noget nyttigt for en bruger, eller er det til en forretningsopgave som at arkivere en webserverens logfiler til databasen?


Hvis det er førstnævnte, skal du fortsætte med at gøre dit underretningsprogram. Hvis det er sidstnævnte, skal du springe over notifikationsområdeprogrammet og opbygge en fuld Windows-service. [2]


I begge tilfælde skal du bruge en timer; ressource brug vil være minimal.

Andre referencer 1


Du må ikke have et program, der kører hele tiden, men kun udfører aktivitet hver time. Skriv et program, der udfører aktiviteten, og planlæg det derefter hver time ved hjælp af Task Scheduler i Windows. [3]

Andre referencer 2


Ikke sikker på forarbejdningsomkostningerne, men du kunne kode i en sovetimer for at sætte den i seng i en time i en løkke, så det vil vågne op, køre og derefter sove igen. Ikke sikker på dræning på ressourcer, når man sover dog. Også hvis programmet kan tage et par minutter, kan du beregne søvn tid baseret på DateTime.Now DateTime objektet, så det vågner op hver time på timen.