Kezdőoldal » Számítástechnika » Programozás » Hogyan lehet a lenti 2 forrásk...

Hogyan lehet a lenti 2 forráskódból egyet csinálni? C++

Figyelt kérdés

#include <stdio.h>

#include <winsock2.h>

// Eszközök / Fordító beállításai

// [x] Következő kapcsolók hozzáadása a linker parancssorához:

// C:\Delete\Devcpp\lib\libws2_32.a

// *** Szerver ***

int main() {

WSADATA wsa;

SOCKET udpsocket;

sockaddr_in server;

char buff[200];

int bufflen=sizeof(buff);

long status;

if ((WSAStartup(0x202, &wsa)) != 0) { printf("Werror!"); getchar(); return 1; }

udpsocket=socket(AF_INET,SOCK_DGRAM,IPPROTO_UDP);

if (udpsocket==INVALID_SOCKET) { printf("Serror!"); getchar(); return 1; }

server.sin_family=AF_INET;

server.sin_port=htons(1234);

server.sin_addr.s_addr=inet_addr("127.0.0.1");

status=bind(udpsocket,(SOCKADDR*)&server,sizeof(server));

if (status==SOCKET_ERROR) { printf("Berror!"); getchar(); return 1; }

printf("Wait...\n");

status=recv(udpsocket,buff,bufflen,0);

if (status!=SOCKET_ERROR) printf("%s\nOK.",buff); else printf("Rerror!");

closesocket(udpsocket);

WSACleanup();

getchar();

return 0;

}


#include <stdio.h>

#include <winsock2.h>

// Eszközök / Fordító beállításai

// [x] Következő kapcsolók hozzáadása a linker parancssorához:

// C:\Delete\Devcpp\lib\libws2_32.a

// *** Kliens ***

int main() {

WSADATA wsa;

SOCKET udpsocket;

sockaddr_in dest;

if ((WSAStartup(0x202, &wsa)) != 0) { printf("Werror!"); getchar(); return 1; }

udpsocket=socket(AF_INET,SOCK_DGRAM,IPPROTO_UDP);

if (udpsocket==INVALID_SOCKET) { printf("Serror!"); getchar(); return 1; }

dest.sin_family=AF_INET;

dest.sin_port=htons(1234);

dest.sin_addr.s_addr=inet_addr("127.0.0.1");

printf("Sending...\n");

sendto(udpsocket,"Teszt",6,0,(SOCKADDR *)&dest,sizeof(dest));

printf("Teszt\n");

printf("OK.");

closesocket(udpsocket);

WSACleanup();

getchar();

return 0;

}



Szóval olyat szeretnék, hogy van egy progi ami parancsot küld, és fogad üzenetet, meg egy másik progi ami parancsot fogad és küld értesítést. és akkor eléglegyen mindkettőnek 1 ip címet megadni, mert én ugytudtam még csak megoldani, hogy kérte a gép a daját ip-t is amit nemtudtam lekérdezni és mondták elég egy proginak 1 ip, és érdekelnénke hogy ezek a parancsok konkrettan mire szolgálnak. Előre is köszönöm!


2012. jan. 26. 19:06
 1/4 anonim ***** válasza:

Nem igazán értem a kérdésed.

Ez ugye most 2 külön program, egy szerver és egy kliens.

A szervernek meg kell adni, hogy melyik címekre "figyeljen" (vagyis a saját címét, vagy megadható, hogy mindre hallgasson, talán 0.0.0.0-val), a kliensbe pedig meg kell adni, hogy a szervert milyen címen éri el.


Ha 1 gépen van a 2 program, akkor egy scripttel könnyen megoldható, hogy mind a 2 programot elindítsa az egy adott IP-vel.


Mi lenne a cél?

2012. jan. 26. 19:27
Hasznos számodra ez a válasz?
 2/4 A kérdező kommentje:
szerver: adott rajta egy ip lista, kiválasztja a felhasználó melyikre küldi a feladatot. a kliens megkapja, válaszol h megjött. azután végrehajtja a feladatot majd ha a feladatnak van visszatérése azt elküldi végül küldi még a szerver ip-re hogy feladat teljesitve, és a kapcsolat lezárul, majd várja a következő parancsot. a kliensnek előre megvan adva a szerver ip a, szervernek előre megvannak adva a kliens ip-k
2012. jan. 26. 20:57
 3/4 anonim ***** válasza:

Miért UDP-t használsz?

Erre inkább TCP lenne talán az ideálisabb.

2012. jan. 26. 21:27
Hasznos számodra ez a válasz?
 4/4 A kérdező kommentje:
Nem tudom, hogy kell programozni :\
2012. jan. 26. 21:44

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!