Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[Winsock] Laczenie z hostem

Ostatnio zmodyfikowano 2011-12-22 15:06
Autor Wiadomość
RazzorFlame
Temat założony przez niniejszego użytkownika
[Winsock] Laczenie z hostem
» 2011-12-11 10:00:59
Witam Was! Chce was sie zapytac jak w winsock'u dodac hosta np z hamachi tak zebym nie tylko ja mogl kozystac z klienta. Mam kurs ze strony: www.win32developer.com/tutorial.shtm
Bardzo prosze Was o pomoc!
P-45447
szyx_yankez
» 2011-12-11 10:18:16
Chodzi o to, że chcesz się łączyć z serwerem znając IP a nie host?
P-45455
RazzorFlame
Temat założony przez niniejszego użytkownika
» 2011-12-11 10:21:02
To znaczy w np gethostbyname( tutaj ip hamachi ). chodzi wlasnie o cos takiego.
P-45456
szyx_yankez
» 2011-12-11 10:27:20
P-45458
RazzorFlame
Temat założony przez niniejszego użytkownika
» 2011-12-11 10:42:34
Oks dzieki wielkie. Jeszcze jedno. Juz ten host jest dobry bo pisze w server "CLIENT CONNECTED" itd. Tylko po tym jak się do serwera podlaczam to dalem zeby wypisal: cout<<"Podlaczylismy sie do serwera!"<<endl; I nic nie wyskakuje.
P-45459
malan
» 2011-12-11 11:44:14
Popełniłeś błąd w kodzie w linijce 69.
P-45466
RazzorFlame
Temat założony przez niniejszego użytkownika
» 2011-12-11 15:17:24
Ehmmm. Malan ja nie podawalem kody pozatym troche przerobilem ten tutek. Teraz pokaze ten kod:
C/C++
#include <iostream>
#include <winsock2.h>

#define pause system("pause >> nul")

using namespace std;

int main()
{
    char * usedhost;
    WSAData wsaData;
   
    if( WSAStartup( MAKEWORD( 2, 2 ), & wsaData ) != 0 )
    {
        cout << "Nie masz poloczenia z internetem!" << endl;
        WSACleanup();
        pause;
        return 1;
    }
   
    SOCKET Socket = socket( AF_INET, SOCK_STREAM, IPPROTO_TCP );
    if( Socket == INVALID_SOCKET )
    {
        cout << "Zly socket!" << endl;
        WSACleanup();
        pause;
        return 1;
    }
    cout << "Podaj hosta z ktorym chcesz sie poloczyc: ";
    cin >> usedhost;
    hostent * host;
    host = gethostbyname( usedhost );
    if(( host = gethostbyname( usedhost ) ) == NULL )
    {
       
        cout << "Nie ma takiego hosta!" << endl;
        WSACleanup();
        pause;
    }
   
    SOCKADDR_IN SockAddr;
   
    SockAddr.sin_port = htons( 4221 );
    SockAddr.sin_family = AF_INET;
    SockAddr.sin_addr.s_addr =*(( unsigned long * ) host->h_addr );
   
    if( connect( Socket,( SOCKADDR * )( & SockAddr ), sizeof( SockAddr ) ) != 0 )
    {
        cout << "Serwer jest wylaczony!" << endl;
        WSACleanup();
        pause;
        return 1;
    }
    cout << "Siemka" << endl;
   
    closesocket( Socket );
   
    WSACleanup();
    system( "pause>>nul" );
    return 0;
}
I tak wgle to ja tu mam 62 linie ;D
P-45481
RazzorFlame
Temat założony przez niniejszego użytkownika
» 2011-12-11 15:23:53
To znaczy program nie widzi:
cout << "Siemka" << endl;
Tylko odrazu przechodzi do system("pause>>nul");

W host wpisalem adres mojego hamachi. Pisze w servie client connected ale tam nie pisze "Siemka". Zas jak wpisze zamiast adresu hamachi, localhost to wszystko dziala!
P-45483
« 1 » 2 3
  Strona 1 z 3 Następna strona