Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
.NET Framework
Come posso schedulare un servizio ad un orario prestabilito?
mercoledì 02 aprile 2008 - 14.33
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
AnnaR6
Profilo
| Newbie
5
messaggi | Data Invio:
mer 2 apr 2008 - 14:33
Ciao a tutti, avrei bisogno del vostro aiuto perchè stò scrivendo un servizio per Windows in Visual .NET che deve inviare un'email tutti i giorni (tranne sabato e domenica) ad un orario prestabilito.
Il servizio c'è e funziona utilizzando la proprietà "Interval" del Timer. Solo che così mi invia questa email ad intervalli di tempo!!
Io invece avrei bisogno che l'email mi fosse inviata tutti i giorni alle 20.00 di sera, ad esempio, indipendentemente da quando ho installato e fatto partire il servizio dal cliente.
Qualcuno ha qualche dritta? Qualche pezzo di codice di esempio??
Grazie, Anna
amelix
Profilo
| Expert
694
messaggi | Data Invio:
mer 2 apr 2008 - 14:54
Non puoi fare una specie di "polling"?
fai un ciclo che ogni minuto chiede che ore sono... (la precisione la decidi tu con il timer) e appena arriva il tuo orario fa le operazioni necessarie.
Altrimenti ti abboni al servizio di windows x le operazioni temporizzate.
Andrea -
http://www.MelisWeb.eu/
CMS -
http://www.WebOrama.it/
Anonimo
Profilo
| Senior Member
392
messaggi | Data Invio:
mer 2 apr 2008 - 14:57
Ciao ,
allora nel pannello di controllo hai l'opzione Scheduled Task dove, una volta selezionato il programma, imposti te a che ora far partire l'applicazione.
Ciao
ALESSANDRA
amelix
Profilo
| Expert
694
messaggi | Data Invio:
mer 2 apr 2008 - 14:58
Esatto! Proprio lui!
Andrea -
http://www.MelisWeb.eu/
CMS -
http://www.WebOrama.it/
AnnaR6
Profilo
| Newbie
5
messaggi | Data Invio:
mer 2 apr 2008 - 15:14
Ringrazio tutti che mi avete risposto!
Nel frattempo ho trovato il sistema per realizzare quello che volevo, il tutto via codice.
Ecco il codice che ho utilizzato con qualche commento:
Funzione di risincronizzazione:
Public Function Resink(ByVal Tm As DateTime, ByVal delta As Long) As Long
Dim time As New DateTime(Date.Now.Year, Date.Now.Month, Date.Now.Day, Tm.Hour, Tm.Minute, 0)
Dim num As Long = CLng(Math.Round(time.Subtract(Date.Now).TotalSeconds))
Do While (num < 0)
num = (num + delta)
Loop
Return (num * &H3E8)
End Function
Il valori che vuole sono:
Tm = orario in cui deve girare il servizio (ad esempio "20.00")
delta = lo step del timer in millisecondi (ad esempio "86400")
Spero che possa essere utile anche a qualcun altro!!
Lampss
amelix
Profilo
| Expert
694
messaggi | Data Invio:
mer 2 apr 2008 - 15:18
Dimmi una cosa... Il processore che dice?
È sempre al 100% immagino.
>scusa ho letto in modo superficiale il codice... adesso ho capito cosa fa.
Andrea -
http://www.MelisWeb.eu/
CMS -
http://www.WebOrama.it/
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !