SocketExeption C#

Résolu
moon@lysa Messages postés 32 Statut Membre -  
moon@lysa Messages postés 32 Statut Membre -
Bonjour à tous,
J'essaie d'inclure un module d'écoute réseau dans mon application développée en C#. Pour cela je crée mon socket de la manière suivante:
Socket = new Socket(AddressFamily.InterNetwork, SocketType.Raw, ProtocolType.IP);

Mais j'ai l'erreur suivante à l'execution:
System.Net.Sockets.SocketException (0x80004005) : Une tentative d'accès à un socket de manière interdite par ses autorisations a été tentée at System.Net.Sockets.Socket..ctor(AddressFamily addressFamily, SocketTypesocketType, ProtocolType protocolType)

Je n'arrive pas à comprendre pourquoi j'ai ce message, j'ai cependant cherché sur le site de support microsoft mais impossible de trouver une quelconque piste....

Merci d'avance de votre aide.
Configuration: Windows Vista
Opera 9.80

3 réponses

  1. moon@lysa Messages postés 32 Statut Membre
     
    serait-il possible que la combinaison InterNetwork ( addressFamily), Raw (socketType) et IP (protocolType) ne soit pas valide ?
    Si non, ai-je fais une erreur dans la façon de créer mon socket? (vu que le message d'erreur intervient à ce moment précis )
    Merci de votre aide!
    0
  2. moon@lysa Messages postés 32 Statut Membre
     
    A force de chercher, j'ai trouvé qu'en fait, l'erreur est liée au système d'exploitation.... VISTA !
    Je ne sais pour quelle raison sous vista cette ligne ne passe...
    Création OK sous WIN XP.
    comme quoi...
    0
  3. moon@lysa Messages postés 32 Statut Membre
     
    EN FAIT, la solution à ce problème est tout autre.
    Il faut être admin pour créer des raw sockets sur la plupart des OS.
    Donc rajouter un manifest à l'application pour lui dire de s'exécuter en admin:

    Clic droit sur le projet -> Add new item -> Application Manifest File -> Ok
    Remplacer cette ligne
    <requestedExecutionLevel level="asInvoker" uiAccess="false" />
    par celle à
    <requestedExecutionLevel level="requireAdministrator"/>

    voilà !
    0