Форум — Ответы     (  К темам )
 ?  Aleksey: IP-адрес (27-03-2003 12:35:15)
Подскажите кто-нибудь как достать сетевой адрес компа и сервера сети.
 nike (27-03-2003 13:07:01)
Функция GetHostByName() — получить IP-адрес
 Aleksey (27-03-2003 13:56:24)
Спасибо за подсказку, но в моей документации по WIN32 API эта функция не описана. Если можно, то поподробнее о ней или ссылку на источник с ее описанием.
 Павел (27-03-2003 16:22:51)
//---------------------------------------------------------------------------
// Пример получения сетевого имени компа
void __fastcall TForm1::Button1Click(TObject *Sender)
{
WORD wVersionRequested;
WSADATA wsaData;
int err;

wVersionRequested = MAKEWORD( 2, 0 );

err = WSAStartup( wVersionRequested, &wsaData );
if ( err != 0 ) {
/* Tell the user that we couldn't find a usable */
/* WinSock DLL. */
return;
}

/* Confirm that the WinSock DLL supports 2.0.*/
/* Note that if the DLL supports versions greater */
/* than 2.0 in addition to 2.0, it will still return */
/* 2.0 in wVersion since that is the version we */

/* requested. */

if ( LOBYTE( wsaData.wVersion ) != 2 ||
HIBYTE( wsaData.wVersion ) != 0 ) {
/* Tell the user that we couldn't find a usable */
/* WinSock DLL. */
WSACleanup( );
return;
}

/* The WinSock DLL is acceptable. Proceed. */

char buff[100];
int ret = gethostname(buff,100);
if(ret != 0){
err = WSAGetLastError();
AnsiString serr;
switch(err){
case WSAEFAULT : serr = "WSAEFAULT"; break;
case WSANOTINITIALISED : serr= "WSANOTINITIALISED"; break;
case WSAENETDOWN: serr = "WSAENETDOWN"; break;
case WSAEINPROGRESS: serr = "WSAEINPROGRESS"; break;
}
Label2->Caption = "Error: "+serr;
} else
Label2->Caption = buff;
}
//---------------------------------------------------------------------------
 Aleksey (30-03-2003 12:02:17)
Благодарю за помощь. Дальше, думаю, разберусь сам.