![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
По узнаванию IPAddress ов [D5, Win95/98, WinME, Win2k]
Dr.Karter © (2003-02-19 10:58:00)Здравствуйте уважаемые Мастера!
Вот из FAQ примерчик он у меня не работает!!!
Из-за чего?
И есть ли еще какой-нибудь способ узнавания IPAddress"ов?
Как можно получить, в Edit1.Text, DNS сети?
Из FAQ
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\ (для 98-винды)
Ищем параметр IPAddress
Программно можно определить следующим образом:
var WSAData : TWSAData;
p : PHostEnt;
Name : array [0..$FF] of Char;
begin
WSAStartup($0101, WSAData);
GetHostName(name, $FF);
p := GetHostByName(Name);
showmessage(inet_ntoa(PInAddr(p.h_addr_list^)^));
WSACleanup;
end;
_Narayan_ (2003-02-22 00:03:00) [1]const NO_ERROR=0;
ERROR_HOST_NOT_FOUND=1;
ERROR_CAN_NOT_LOAD_WINSOCKETS=2;
ERROR_EMPTY_IPADDR_PARAMETR=4;
ERROR_EMPTY_NAME_PARAMETR=8;
function mStrNameToIpAddr(const Name: String; var IpAddr: String): Integer;
var wsadt : wsadata;
Host : PHostEnt;
begin
If (Trim(Name)="") then
begin
Result:=ERROR_EMPTY_NAME_PARAMETR;
Exit;
end;
If (WSAStartup($0101,wsadt)=0) Then
begin
Host := GetHostbyName(PChar(Name));
if (host = nil) then Result:=ERROR_HOST_NOT_FOUND Else
Begin
IpAddr:=String(inet_ntoa(PInAddr(Host.h_addr_list^)^));
Result:=NO_ERROR;
end
end
Else Result:=ERROR_CAN_NOT_LOAD_WINSOCKETS;
WSACleanup();
end;
dr.Karter (2003-02-21 11:28:00) [2]Так в чем проблема с этим примерчиком?