获取本地计算机的名称和IP地址

  1. uses  WinSock;
  2. function Pub_GetComputerName: string{计算机名}
  3. var
  4.   CNameBuffer: PChar;
  5.   fl_loaded: Boolean;
  6.   CLen: ^DWord;
  7. begin
  8.   result := '';
  9.   GetMem(CNameBuffer, 255);
  10.   New(CLen);
  11.   CLen^ := 255;
  12.   fl_loaded := GetComputerName(CNameBuffer, CLen^);
  13.   if fl_loaded then
  14.     result := StrPas(CNameBuffer)
  15.   else
  16.     result := 'Unkown';
  17.   FreeMem(CNameBuffer, 255);
  18.   Dispose(CLen);
  19. end;
  20. function Pub_LocalIP: string{获取IP}
  21. type
  22.   TaPInAddr = array[0..10of PInAddr;
  23.   PaPInAddr = ^TaPInAddr;
  24. var
  25.   phe: PHostEnt;
  26.   pptr: PaPInAddr;
  27.   Buffer: array[0..63of char;
  28.   I: Integer;
  29.   GInitData: TWSADATA;
  30. begin
  31.   WSAStartup($101, GInitData);
  32.   Result := '';
  33.   GetHostName(Buffer, SizeOf(Buffer));
  34.   phe := GetHostByName(buffer);
  35.   if phe = nil then Exit;
  36.   pptr := PaPInAddr(Phe^.h_addr_list);
  37.   I := 0;
  38.   while pptr^[I] <> nil do begin
  39.     result := StrPas(inet_ntoa(pptr^[I]^));
  40.     Inc(I);
  41.   end;
  42.   WSACleanup;
  43. end;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值