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

MFC Discussion :

Visual C++ 6.0 Debug Service Nt [FAQ]


Sujet :

MFC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2002
    Messages : 82
    Par défaut Visual C++ 6.0 Debug Service Nt
    Bonjour,

    J'ai écrit un service Nt. J'aimerais le débugger.

    J'installe mon service, je le lance, ensuite dans visual c++ je fait Build/start/debug/attach to process.. je choisis mon service dans la liste je fait ok. Et là je ne vois plus mon code avec mes points d'arrêts.

    Comment faire pour débugger mon service correctement ?

    Merci,

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut,
    je pose quand meme la question au cas ou ,
    le service enregistré/executé est en mode debug ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2002
    Messages : 82
    Par défaut
    ha,

    Bonne question

    je l'ai lancé simplement

    monservice -i
    net start lenomdemonservice

    Je ne connais pas l'option debug dans les services.

    Merci

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut,
    Ce n’est pas garanti que ça fonctionne.
    L’exécutable enregistré doit être en debug pour pouvoir être tracé par l’option debug attach to process.
    Sinon voir si c’est possible d’appliquer la technique utilisée dans ce post :
    Je crée artificiellement les conditions d’exécution du service.
    http://www.developpez.net/forums/vie...353028#1353028
    Moi c’est comme ça que je fais.


  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2002
    Messages : 82
    Par défaut
    salut,

    oui il y a une option debug dans le service.

    En mode console j'ai lancé monservice -d

    et dans visual c++ 6.0 j'ai linké au process et ensuite j'ai ouvert le cpp ou je voulais placer un point d'arrêt et cela fonctionne très bien MERCI.

    Seule petit problème j'aimerais déboguer le démarrage du service et la je ne vois pas du tout comment faire.

    Merci;

  6. #6
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #define DebugBreak()    _asm { int 3 }
    En version Debug tu fais un appel à DebugBreak au début de la fonction ServiceMain
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    #ifdef _DEBUG
        DebugBreak();
    #endif
    Ensuite démarre ton service. Tu devrais avoir une fenêtre qui te propose de le debugger

    Par contre, initialise ton Statut (Hint) en conséquence car le SCM ne démarrera pas ton service si tu passes trop de temps avant de lui envoyer le statut Running.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2002
    Messages : 82
    Par défaut
    Impeccable !

    Merci pour vos réponses, j'arrive à faire un déboguage complet de mon service.

    A bientôt,

  8. #8
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Par défaut
    Pour le bouton Résolu utilise le bouton en bas à gauche la prochaine fois
    Merci

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

Discussions similaires

  1. Common Language Runtime Debugging Services
    Par jemicori dans le forum Windows Vista
    Réponses: 4
    Dernier message: 24/02/2008, 23h11
  2. CLR debugging services
    Par cedBers dans le forum C#
    Réponses: 2
    Dernier message: 15/11/2007, 23h45
  3. visual studio plante en debug
    Par dietrich dans le forum Général Dotnet
    Réponses: 5
    Dernier message: 23/10/2007, 15h19
  4. Visual C++ 2005 et Web Services
    Par alexadvance dans le forum Windows
    Réponses: 2
    Dernier message: 21/02/2007, 10h01
  5. [C#] debug service windows
    Par ddoc dans le forum Windows Forms
    Réponses: 2
    Dernier message: 11/05/2006, 09h03

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