我是一个新手,请大家帮忙!
如何通过网络获得对方计算机的IP地址,如何写代码!还有需要的控件。
获得对方的IP之后怎样获得对方计算机的权限。
求大家帮忙!本人十分感谢!

解决方案 »

  1.   

    知道计算机名?
    gethostbyname()
    下面抄的:
    function GetIPFromHost(const Name: string): string;
    var
      wsdata: TWSAData;
      hostName: array[0..255] of char;
      hostEnt: PHostEnt;
      addr: PChar;
    begin
      WSAStartup($0101, wsdata);
      try
        gethostname(hostName, sizeof(hostName));
        StrPCopy(hostName, Name);
        hostEnt := gethostbyname(hostName);
        if Assigned(hostEnt) then
          if Assigned(hostEnt^.h_addr_list) then
          begin
            addr := hostEnt^.h_addr_list^;
            if Assigned(addr) then
            begin
              Result := Format('%d.%d.%d.%d', [byte(addr[0]),
                byte(addr[1]), byte(addr[2]), byte(addr[3])]);
            end
            else
              Result := '';
          end
          else
            Result := ''
        else
        begin
          Result := '';
        end;
      finally
        WSACleanup;
      end
    end;
      

  2.   

    function GetIP(Name:string) : string;
    //根据IP地址获取对方计算机名函数
    type
    TaPInAddr = array [0..10] of PInAddr;
    PaPInAddr = ^TaPInAddr;
    var
    phe :PHostEnt;
    pptr : PaPInAddr;
    I : Integer;
    GInitData : TWSADATA;
    begin
      WSAStartup($101, GInitData);
      Result := '';
      phe :=GetHostByName(pchar(Name));
      pptr := PaPInAddr(Phe^.h_addr_list);
      result:=StrPas(inet_ntoa(pptr^[0]^));
      WSACleanup;
    end;function GetDomainName(Ip:string):string;
    //根据计算机名获取IP地址函数
    var 
    pH:PHostent;
    data:twsadata;
    ii:dword;
    begin
      WSAStartup($101, Data);
      ii:=inet_addr(pchar(ip));
      pH:=gethostbyaddr(@ii,sizeof(ii),PF_INET);
      if (ph<>nil) then
      result:=pH.h_name
      else
      result:='';
      WSACleanup();
    end;
      

  3.   

    小弟是在是太笨了,
    还是搞不定,请大家帮忙。
    上面那位老兄说的PHostEnt、PaPInAddr、inet_addr这些在我的机器里编译通不过
    说是没有定义,但我用F1也找不到,请那位老兄帮忙!
      

  4.   

    楼主加上以下这个
    USES  winsock