Datamaskin
  | Hjem | Hardware | Nettverk | Programmering | Software | Feilsøking | Systems | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringsspråk
  • Delphi Programming
  • Java Programming
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl Programming
  • Python Programming
  • Ruby Programming
  • Visual Basics Programming
  •  
    Datamaskin >> Programmering >> C /C + + Programming >> Content
    Hvordan lage TCP /IP-pakker kode i C Programming
    Opprette en TCP /IP-pakke er viktig når du vil at C-program for å gjøre en aktiv forbindelse med en ekstern vert å sende data frem og tilbake. TCP /IP er en nettverksprotokoll som gir pålitelig og bestilte levering av pakker mellom to verter . The World Wide Web , e-post og filoverføring applikasjoner alle bruke TCP /IP-protokollen . Lag en TCP /IP-pakke ved å samle inn data om en vert, gjør en socket ut av disse dataene , og deretter sende den kontakten til den eksterne verten . Instruksjoner
    en

    Åpne C -filen i en editor som VC + + .
    2

    Legg Winsock biblioteket til din kompilator prosjekt innstillinger slik at den vil koble riktig. I VC + + dette gjøres ved å klikke på "Project "-menyen , klikke " Innstillinger ... " klikke "Link " og skrive " ws2_32.lib " i boksen med tittelen "objekt /bibliotek moduler. " Andre mulige navn for Winsock bibliotek inkluderer " winsock32.lib " og " wsock32.lib . "
    3

    Inkluder " Winsock2 " og " ws3tcpip " hoder å få tilgang til socket funksjoner ved å legge følgende kode på toppen av filen : en

    # include

    # include
    4

    Erklærer variabler som trengs for å skape et TCP /IP-pakke ved å legge følgende kode i funksjon din :

    struct addrinfo hint, * res ;

    int socket_descriptor ;

    " addrinfo " structs vil lagre avkastningen verdien av " getaddrinfo "-funksjonen . Den " socket_descriptor " er heltall beskrivelse som den " kontakten " funksjonen vil returnere
    5

    Initialiser variabler ved å legge følgende kode: .

    Memset (& hint, 0 , sizeof hint ) ;

    hints.ai_family = AF_UNSPEC ;

    hints.ai_socktype = SOCK_STREAM ;

    " AF_UNSPEC " verdien angir at adressen familien for " getaddrinfo "-funksjonen kan være noen gyldig type, for eksempel IPv4 eller IPv6. Den " SOCK_STREAM " indikerer en TCP stream socket
    6

    Ring " getaddrinfo "-funksjonen ved å legge følgende kode: .

    Getaddrinfo ( " www.server.com ", " 3490 ", og hint, og res) ;

    Erstatt" www.server.com " med serveren du vil koble til . Erstatt " 3490 " med porten du vil koble til . Den " getaddrinfo "-funksjonen samler protokoll - uavhengig informasjon om en adresse fra sin vert navn, som den returnerer i " addrinfo " structs .
    7

    Lag en TCP /IP socket med " socket "-funksjonen , ved å legge følgende kode :

    socket_descriptor = socket (res - > ai_family , res - > ai_socktype , res - > ai_protocol ) ;

    " socket "-funksjonen bruker informasjonen returnert fra " getaddrinfo " funksjonen for å lage en komplett socket
    8

    Koble til den eksterne serveren med " connect "-funksjonen ved å legge følgende kode: .

    connect ( socket_descriptor , res - > ai_addr , res - > ai_addrlen ) ;

    " connect "-funksjonen tar kontakt , sender det til den angitte adressen og skaper en aktiv forbindelse med verten
    ni .

    Lagre filen , kompilere og kjøre programmet for å opprette TCP /IP-pakke.

    früher :

     Weiter:
      Relatert Artike
    ·Hvordan å feilsøke i Visual C + + 
    ·Hvordan Telle funksjoner i C-kode 
    ·Slik konverterer C + + ASCII til UTF8 
    ·Visual Basic. NET Vs . Visual C # NET 
    ·Hvordan Link OBJ -filer i Turbo C + + 
    ·Hva er nyttige C + Compiler Flags 
    ·Hvordan å lære C # Step-by -Step 
    ·Hvordan skrive et program i C for metriske konvertering…
    ·Slik viser Fonts i MFC 
    ·Hvordan Ring Visual Basic DLL Fra C 
      Anbefalte artikler
    ·Slik kjører du en Python Script From Another Python Sc…
    ·PHP Breaks i virtuellverten Mime Type 
    ·Hvordan skriver jeg en temperatur konvertering program …
    ·Hvordan lage en Oversetter i Python 
    ·Hvordan komme i gang med Visual Basic 6 
    ·Hvordan legge til en rad til Gridview automagisk 
    ·Hvordan å erklære en String i C + + 
    ·Hvordan finne sideantall for Print Dialog i VB.NET 
    ·Base SDK Missing Xcode 
    ·Hvordan Senter - Begrunn String Produksjonen i Java 
    Copyright ©  Datamaskin  http://www.datamaskin.biz/