发信人: teleme()
整理人: teleme(2003-09-19 15:48:05), 站内信件
|
function getcomputer:string;
//计算机名
type
TaPInAddr = array [0..10] of PInAddr;
PaPInAddr = ^TaPInAddr;
var
phe : PHostEnt;
Buffer : array [0..63] of char;
I : Integer;
GInitData : TWSADATA;
name1:string;
begin
WSAStartup($101, GInitData);
GetHostName(Buffer, SizeOf(Buffer));
phe :=GetHostByName(buffer);
if phe = nil then Exit;
i:=0 ;
while ((buffer[i]>=#97) and (buffer[i]<=#122))
or((buffer[i]>#65 ) and (buffer[i]<=#90)) do
begin
name1:=name1+buffer[i];
i:=i+1;
end ;
WSACleanup;
getcomputer:=name1;
end;
function getip:string;
//返回IP
type
TaPInAddr = array [0..10] of PInAddr;
PaPInAddr = ^TaPInAddr;
var
phe : PHostEnt;
pptr : PaPInAddr;
Buffer : array [0..63] of char;
I : Integer;
GInitData : TWSADATA;
begin
// returns ISP assigned IPf
WSAStartup($101, GInitData);
Result := '';
GetHostName(Buffer, SizeOf(Buffer));
phe :=GetHostByName(buffer);
if phe = nil then Exit;
pptr := PaPInAddr(Phe^.h_addr_list);
I := 0;
while pptr^[I] <> nil do begin
result:=StrPas(inet_ntoa(pptr^[I]^));
Inc(I);
end;
WSACleanup;
end;
-- 咳。咳。咳。。。
怎么会这样?
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.109.254.112]
|
|