- uses WinSock;
- function Pub_GetComputerName: string; {计算机名}
- var
- CNameBuffer: PChar;
- fl_loaded: Boolean;
- CLen: ^DWord;
- begin
- result := '';
- GetMem(CNameBuffer, 255);
- New(CLen);
- CLen^ := 255;
- fl_loaded := GetComputerName(CNameBuffer, CLen^);
- if fl_loaded then
- result := StrPas(CNameBuffer)
- else
- result := 'Unkown';
- FreeMem(CNameBuffer, 255);
- Dispose(CLen);
- end;
- function Pub_LocalIP: 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
- 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;
获取本地计算机的名称和IP地址
最新推荐文章于 2024-09-30 11:41:49 发布