Timer dans un service

Résolu
DevDragon Messages postés 51 Date d'inscription mercredi 22 septembre 2004 Statut Membre Dernière intervention 10 mars 2008 - 7 mars 2008 à 14:23
fkuchta Messages postés 44 Date d'inscription jeudi 27 juin 2002 Statut Membre Dernière intervention 20 novembre 2008 - 20 nov. 2008 à 08:55
Bonjour à tous,

J'essai d'utiliser un timer dans un service windows. Le problème que le timer n'a pas l'air de se déclancher.

Je joint mon code si une bonne âme aurait la solution à mon problème.

Merci d'avance.

Imports System.Net.Mail.SmtpClient

Public Class ControleEdi

    Protected Overrides Sub OnStart(ByVal args() As String)
        ' Ajoutez ici le code pour démarrer votre service. Cette méthode doit
        ' démarrer votre service.
        Timer.Enabled = True
        Timer.Start()

    End Sub

    Protected Overrides Sub OnStop()
        ' Ajoutez ici le code pour effectuer les destructions nécessaires à l'arrêt de votre service.
    End Sub

    Private Sub Timer_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer.Tick
        Dim client As Net.Mail.SmtpClient
        Dim message As Net.Mail.MailMessage

        client = New Net.Mail.SmtpClient("xxx.xxx.xxx.xxx", "xx")
        message = New Net.Mail.MailMessage("gdt@xxx.fr", "gdt@xxx.fr")
        message.Subject = "EnvoiTestService"
        message.Body = "Attention ça marche pas"
        client.Send(message)
    End Sub
End Class

Youpitralalalalere
A voir également:

5 réponses

crapoutaux Messages postés 1 Date d'inscription lundi 29 septembre 2003 Statut Membre Dernière intervention 20 novembre 2008
20 nov. 2008 à 08:50
Bonjour,

Ayant le même problème, et après une petite recherche sur la toile, voici un petit extrait :

".Net includes two completely separate timers:  system.windows.forms.timer<wbr> and system.timers.timer.  You're probably using a forms timer, which is somewhat bound to the UI thread.  Try using a system.timers.timer instead.  It works pretty much the same, but has an elapsed event instead of a tick event."

Fallait le savoir ;-)

Bone journée !

Crapoutaux</wbr>
3
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
8 mars 2008 à 12:36
salut,

peut-être l'intervalle du timer?
il s'appelle "timer", tu as renommé? (il devrait s'appeler "timer1")

en pas à pas tu ne passes jamais dans l'évènement _Tick ?
++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
DevDragon Messages postés 51 Date d'inscription mercredi 22 septembre 2004 Statut Membre Dernière intervention 10 mars 2008
10 mars 2008 à 14:05
Hello,

J'ai bien renommer mon Timer en ... Timer .. mon intervale est de 10000 ms donc si je ne fais pas d'erreur 10 secondes.

Le problème dans le service est que je ne peux pas fair ede pas à pas, car lorsque je lance le débogueur VS me dit : qu'il est impossible de démarrer un service en mode debogueur et qu'il doit etre installer.

Donc j'installe et je desinstalle le service à chaque nouveau test puis je le demerre dans les gestionnaire de service.

Youpitralalalalere
0
fkuchta Messages postés 44 Date d'inscription jeudi 27 juin 2002 Statut Membre Dernière intervention 20 novembre 2008
4 nov. 2008 à 12:18
Salut !

J'ai le même problème que toi : le timer ne se déclenche jamais.
Pour accrocher ton débogage au processus du service, tu as une solution donnée ici, tout en bas : http://webman.developpez.com/articles/dotnet/serviceswindows/vbnet/

Si tu as une solution, je suis preneur pour le déclenchement de ce timer. Je ne vois pas c qui cloche..

Merci beaucoup !

A+

Fabrice, Toulouse
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fkuchta Messages postés 44 Date d'inscription jeudi 27 juin 2002 Statut Membre Dernière intervention 20 novembre 2008
20 nov. 2008 à 08:55
Salut

Merci Crapoutaux !

Je me doutais d'un truc dans le genre, mais c'est subtil, quand même...

Merci encore !

A+

Fabrice
0
Rejoignez-nous