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

C# Discussion :

[Service] Bar de progression: Controle de service -> le service n'a pas repondu 1053


Sujet :

C#

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 002
    Points : 552
    Points
    552
    Par défaut [Service] Bar de progression: Controle de service -> le service n'a pas repondu 1053
    Bonjour,


    J'ai un souci etrange avec un service que j'ai dev:

    dans le main je fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     System.ServiceProcess.ServiceBase.Run(new MonService());

    ensuite dans le OnStart je fais tout de suite un Thread.Sleep(plusieurs heures), ou je lance une procedure.... le probleme est le meme:

    lors du demarage du service, j'ai une barre de progression: "Controle de service : windows esssai de démarrer le service sur l'ordinateur local"

    au bout de 30 secondes j'ai un message d'erreur:
    "impossible de démarrer le service, erreur 1053, le service n'a répondu assez vite à la demande de lancement ou de controle"

    ---> le processus marche et est pourtant lancé...


    il faut que je rajoute quelque chose dans le OnStart pour "repondre à la demande de controle" ??

    merci

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 002
    Points : 552
    Points
    552
    Par défaut
    The OnStart method must return to the operating system once the service's operation has begun. It must not loop forever or block. To set up a simple polling mechanism, you can use the System.Timers.Timer component. In the OnStart method, you would set parameters on the component, and then you would set the Timer.Enabled property to true. The timer would then raise events in your code periodically, at which time your service could do its monitoring.
    http://69.10.233.10/KB/dotnet/simplewindowsservice.aspx

    arf d'apres ce que je comprend c'est pas bien d'utiliser sleep....

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Le OnStart a un temps maximum pour s'exécuter avant que Windows ne considère qu'il ne répond plus. Dans cette méthode tu ne dois rien faire d'autre qu'initialiser le service, tu ne dois pas y faire de traitement de longue durée (ni mettre un long Sleep bien sûr...)

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 002
    Points : 552
    Points
    552
    Par défaut
    je peux le mettre ou mon sleep car j'suis obligé de passer par le OnStart pour lancer ma procedure ? ou y a un autre endroit ?

    sinon je crois que jvais mettre un timer au moins... pas de souci

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    ben je vois pas trop à quoi il sert le sleep...
    un timer c'est souvent une bonne solution pour un service
    sinon, si c'est un traitement permanent, il faut le lancer dans un autre thread

Discussions similaires

  1. Service en tant que controller (MVC)
    Par Arno5788 dans le forum Android
    Réponses: 2
    Dernier message: 09/02/2012, 09h29
  2. Restriction et Controles au niveau du web service
    Par h.daly dans le forum Services Web
    Réponses: 0
    Dernier message: 15/04/2010, 14h01
  3. Bar de progression
    Par zoom61 dans le forum VBA Access
    Réponses: 6
    Dernier message: 24/05/2007, 15h03
  4. Réponses: 2
    Dernier message: 03/08/2006, 09h37
  5. Bar de Progression
    Par MICHELBORLAND dans le forum Windows Serveur
    Réponses: 2
    Dernier message: 21/12/2005, 14h30

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