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

Threads & Processus C++ Discussion :

recuperer Id de processus


Sujet :

Threads & Processus C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 64
    Par défaut recuperer Id de processus
    bonsoir,

    mon probléme est le suivant : je suis sous visuel c++ 2005 express edition je dois creer une fonction qui prend en argument le numero d'un port et qui retourne le Id du processus associé.j'ai déjà poster ce probleme mais la réponse que j'ai eu c'été d'utiliser la methode "GetExtendedTcpTable" ,mon probleme c'est que j'ai pas su l'utiliser meme avec un exemple que j'ai trouvé sur un site quand je compile il me donne rien ,svp si vous pouvez m'aider a creer cette fonction je serai reconnaissant .merci d'avance

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 48
    Par défaut
    Salut

    Est que tu utlise MFC.

    Si Oui tu peux utiliser le class Handle

  3. #3
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Donne des précisions sur ce qui se passe (ou pas) quand tu cherches à utiliser GetExtendedTcpTable().
    Poste ton code, aussi.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  4. #4
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 64
    Par défaut
    bonjour,

    merci pour vos proposition et pour votre rapidité aussi,en fait j'utilise pas les MFC ,en ce qui concerne le code voilà le code que j'ai trouvé dans un site web juste pour vous donnez une idée car il est en C# :
    **********************************************************
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    public void GetTcpConnections()
    {
      int AF_INET = 2; // IP_v4
      int res = IPHlpAPI32Wrapper.GetExtendedTcpTable(buffer, out buffSize, 
                true, AF_INET, TCP_TABLE_CLASS.TCP_TABLE_OWNER_PID_ALL, 0);
      if (res != Utils.NO_ERROR) //If there is no enouth memory to execute function
      {
        buffer = new byte;
        res = IPHlpAPI32Wrapper.GetExtendedTcpTable(buffer, out buffSize, 
              true, AF_INET, TCP_TABLE_CLASS.TCP_TABLE_OWNER_PID_ALL, 0);
        if (res != Utils.NO_ERROR)
        {
          return;
        }
      }
      int nOffset = 0;
      int NumEntries = Convert.ToInt32(buffer[nOffset]);
      nOffset += 4;
      for (int i = 0; i < NumEntries; i++)
      {
        TCPUDPConnection row = new TCPUDPConnection();
        // state
        int st = Convert.ToInt32(buffer[nOffset]);
        // state by ID
        row.iState = st;
        nOffset += 4;
        row.Protocol = Protocol.TCP;
        row.Local = Utils.BufferToIPEndPoint(buffer, ref nOffset, false);
        row.Remote = Utils.BufferToIPEndPoint(buffer, ref nOffset, true);
        row.PID = Utils.BufferToInt(buffer, ref nOffset);
        this.Add(row);
      }
    *******************************************************

    pour plus d'information ya le lien suivant :

    http://www.codeproject.com/KB/IP/iphlpapi2.aspx


    dans leurs application(de ce site) ils recuperent l'adresse source et le port soure et l'adresse destination et le port destination et le ID du processus associé.

    svp aidez moi a faire marché ce code en vc++,et le mettre dans le corp d'une fonction qui prend en argument le num du port et qui retourne le ID du processus associé ,dans le plus proche possible.

    pous pouvez aussi m'envoyer des codes sur ma boite:

    goodlife01@hotmail.fr

    merci d'avance


    }

  5. #5
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut

    Je te conseillerais plutôt d'utiliser directement la fonction sans exemple de codes, car ça n'a pas l'air de s'éloigner de ce qui se fait habituellement sous Windows.

    De plus, ce code C# m'a l'air incomplet. (il y a sûrement des crochets dans le "new byte;")
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  6. #6
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 64
    Par défaut
    salut,

    oui,mais l'utilisation de cette fonction n'est pas evidente et en plus ya pas un exemple dans la "msdn" donc s'il ya des coups de pouss je serai reonnaissant.merci

Discussions similaires

  1. Recuperation argument processus
    Par ZeroZero dans le forum VB.NET
    Réponses: 4
    Dernier message: 16/05/2007, 16h59
  2. Recuperer les processus du systeme ?
    Par kedare dans le forum API standards et tierces
    Réponses: 6
    Dernier message: 06/04/2007, 21h21
  3. Réponses: 4
    Dernier message: 02/11/2005, 16h16
  4. Réponses: 10
    Dernier message: 13/05/2005, 12h08
  5. Réponses: 2
    Dernier message: 04/10/2002, 09h13

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