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 :

Détection fermeture d'un service


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de koyot3
    Inscrit en
    Avril 2007
    Messages
    693
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 693
    Par défaut Détection fermeture d'un service
    Bonjour à tous,

    Je crée un service en VB, un peu en suivant le tutoriel suivant :
    http://webman.developpez.com/article...windows/vbnet/

    Mon service fonctionne, pas de soucis là dessus !
    Le problème arrive quand je ferme brutalement le service depuis le gestionnaire des tâches windows....
    La méthode Protected Overrides Sub OnStop() n'est pas levée, tout comme ShutDown()...

    Quelqu'un a-t-il une idée de comment faire pour récupérer l'evènement pour exécuter une action juste avant la fermeture....

    Merci d'avance

    @+

  2. #2
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par koyot3 Voir le message
    Quelqu'un a-t-il une idée de comment faire pour récupérer l'evènement pour exécuter une action juste avant la fermeture....
    En fermant le service proprement via le SCM.

    Comme le "kill" du process via le task manager ne peut être fait que par un administrateur, qui est donc quelqu'un censé savoir ce qu'il fait, ce n'est pas un problème (ou alors, c'est un problème de politique de sécurité du SI, pas un problème technique).

  3. #3
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    tu fais un service qui surveille le premier ^^ (certains virus font ca)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  4. #4
    Membre éclairé Avatar de koyot3
    Inscrit en
    Avril 2007
    Messages
    693
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 693
    Par défaut
    Citation Envoyé par Bluedeep Voir le message
    En fermant le service proprement via le SCM.

    Comme le "kill" du process via le task manager ne peut être fait que par un administrateur, qui est donc quelqu'un censé savoir ce qu'il fait, ce n'est pas un problème (ou alors, c'est un problème de politique de sécurité du SI, pas un problème technique).
    normalement, cette fermeture est assez rare mais c'est histoire de blinder le système..
    les utilisateurs finaux seront sans doute administrateur de leur poste, mais pas forcément des experts, plutôt des touches à tout donc ....

    Citation Envoyé par Pol63 Voir le message
    tu fais un service qui surveille le premier ^^ (certains virus font ca)
    c'est déjà ce qui est en place avec un vieux KeepAlive...
    un service esclave interroge son maître pour savoir s'il est encore "vivant"
    je cherchais un truc plus propre : ping sur un tcp ???

    en tout cas, merci à vous deux pour vos réponses

  5. #5
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    le plus propre reste de récupérer la variable service et sur l'interval faire .refresh et regarder .state
    ajouter la référence servicemodel ou serviceprocess

    et si le .state vaut stopped tu fais .start tout simplement ^^


    et voir pour que le service principal surveille aussi son surveillant
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  6. #6
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par Pol63 Voir le message
    le plus propre reste de récupérer la variable service et sur l'interval faire .refresh et regarder .state
    ajouter la référence servicemodel ou serviceprocess

    et si le .state vaut stopped tu fais .start tout simplement ^^


    et voir pour que le service principal surveille aussi son surveillant
    Ca, ça permettra que le service soit remis en marche mais n'empêchera pas un arrêt "sale".

  7. #7
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par koyot3 Voir le message
    les utilisateurs finaux seront sans doute administrateur de leur poste,
    C'est peut être là qu'il faut chercher le problème.

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

Discussions similaires

  1. Détection réseau wifi hors service
    Par Michel DELAVAL dans le forum Windows XP
    Réponses: 5
    Dernier message: 14/02/2009, 10h48
  2. Fermeture d'un service de lui-même
    Par homeostasie dans le forum Visual C++
    Réponses: 2
    Dernier message: 30/09/2008, 16h32
  3. Licenciement pour fermeture d'un service
    Par lapanne dans le forum Licenciement
    Réponses: 9
    Dernier message: 11/07/2007, 16h20
  4. Détection fermeture d'un fichier
    Par Janny dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 28/06/2007, 17h52
  5. [VB6] Fichier excel en lecture seul et détection fermeture
    Par belfaigore dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 17/05/2006, 11h48

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