IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Timers et WindowsService


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Par défaut Timers et WindowsService
    Bonjour à tous,

    J'ai un problème étrange (un de plus...).

    Je commence par planter le décor.

    J'ai un service windows qui possède un contrôle de type System.Timers.Timer (c'est important car il ne s'agit du même timer que pour les winforms).

    Mon service démarre très bien avec log dans le journal des évènements qui a été créé spécialement pour lui.

    Malheureusement, on dirait que l'évènement Elapsed du-dit timer n'est jamais levé.

    Il n'y a pas d'erreur dans la procédure OnStart du service. J'ai placé une ligne d'écriture dans le journal à la fin de OnStart pour être sûr. S'il y avait une erreur avant, cette instruction n'écrirait pas dans le journal.

    Dans l'event du timer, je commence d'abord par des déclarations de variables tout ce qu'il y a de plus banales. Rien qui puisse provoquer une erreur selon moi. Voici quand même le code au cas où :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Dim fl As String = ""
    Dim table, ext As String
    Dim erreur As Boolean = False
    Dim criterias As New Arraylist
     
    Jevent.WriteEntry("Check du créneau horaire")
    Voilà donc le code, je vous ai même mis la ligne suivante qui est donc sensée écrire dans le journal. La ligne d'après est une simple comparaison entre l'heure actuelle et l'heure où doit avoir lieu le traitement.

    Quoi qu'il en soit, même si ce n'est pas la bonne heure, je dois voir apparaître la phrase "Check du créneau horaire" dans le journal. Or ce n'est pas le cas.

    Quelqu'un aurait-il une idée ? De ce que je peux voir, le service se comporte comme si l'event n'était jamais levé.

    Ah oui, autre détail particulier.
    Avant (genre avant la semaine de vacances que je viens de prendre), si je faisais un run dans VS du projet, VS ralait car il ne pouvait l'exécuter du fait que c'est un service (pour je ne sais plus quelle raison). J'ai remarqué en faisant un run par erreur ce matin que maintenant, cela fonctionne....

    Cela apportera p-e un indice à quelqu'un de calé sur le sujet.

    Bref, I need help

    Merci d'avance.

    Griftou.

  2. #2
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Par défaut
    Bonjour,
    question à la con, mais on ne sais jamais, tu lances bien le timer avec ca fonction start? (Je sais ca a l'aire con mais des fois on en fait des conneries hein ^^)

  3. #3
    Rédacteur
    Avatar de benji_dv
    Homme Profil pro
    Architecte
    Inscrit en
    Juillet 2005
    Messages
    375
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 375
    Par défaut
    euh,
    question idiote tu n'as pas oublié le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    monTimer.Enabled = true;
    par hasard ?
    Benjamin DEVUYST
    Et comme l'a dit Rick Osborne
    "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live"
    http://bdevuyst.developpez.com
    http://blog.developpez.com/bdevuyst
    www.bdevuyst.com

  4. #4
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Par défaut
    Citation Envoyé par benji_dv Voir le message
    euh,
    question idiote tu n'as pas oublié le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    monTimer.Enabled = true;
    par hasard ?
    Trop fort, posté en même temps...

  5. #5
    Membre expérimenté
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Par défaut
    Bien vu mais non ce n'est pas ça ^^.

    Pour l'info, que ce soit avec Timer1.Enabled = True ou Timer1.Start(), le résultat est le même pour mon problème...

    Merci quand même.

    Quelqu'un d'autre ? ^^

  6. #6
    Rédacteur
    Avatar de benji_dv
    Homme Profil pro
    Architecte
    Inscrit en
    Juillet 2005
    Messages
    375
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 375
    Par défaut
    même idée

    en même temps la première cause de panne réseau est... le cable débranché
    Benjamin DEVUYST
    Et comme l'a dit Rick Osborne
    "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live"
    http://bdevuyst.developpez.com
    http://blog.developpez.com/bdevuyst
    www.bdevuyst.com

  7. #7
    Rédacteur
    Avatar de benji_dv
    Homme Profil pro
    Architecte
    Inscrit en
    Juillet 2005
    Messages
    375
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 375
    Par défaut
    sinon, te reste toujours la possibilité d'utiliser un thread du threadpool avec une boucle, et un thread.sleep
    Benjamin DEVUYST
    Et comme l'a dit Rick Osborne
    "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live"
    http://bdevuyst.developpez.com
    http://blog.developpez.com/bdevuyst
    www.bdevuyst.com

  8. #8
    Membre expérimenté
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Par défaut
    Bah non, je ne veux pas faire l'autruche.

    Ce service fonctionnait très bien avant... Y a pas de raison... Ca doit encore fonctionner.

    Je pige vraiment pas... J'espère que ce n'est pas pcq'un zouave de collègue est venu chipoter dedans pendant ma semaine de vacances et que je ne vois pas ce qu'il a modifié...

    Je l'aurais mauvaise là...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment faire un Timer de fonction PORTABLE ?
    Par dieuP1guin dans le forum C
    Réponses: 3
    Dernier message: 04/07/2003, 10h44
  2. [horloge] conflit caractère / timer
    Par JeanJean dans le forum C
    Réponses: 10
    Dernier message: 09/05/2003, 23h47
  3. [] [Réseau] Anti-timer, anti-idle
    Par clonevince dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 15/01/2003, 22h19
  4. Timer de précision
    Par guigui dans le forum MFC
    Réponses: 1
    Dernier message: 04/12/2002, 15h21
  5. Timer en µsecondes
    Par Dagobert dans le forum x86 16-bits
    Réponses: 3
    Dernier message: 25/11/2002, 00h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo