应该可以用 API 得到。
gethostbyaddr()

解决方案 »

  1.   

    var
       CNameBuffer : PChar;
      fl_loaded : Boolean;
      CLen : ^DWord;begin    GetMem(CNameBuffer,255);
        New(CLen);
        CLen^:= 255;    fl_loaded := GetComputerName(CNameBuffer,CLen^);    if fl_loaded then
          ComputerName := StrPas(CNameBuffer)
        else
          ComputerName := 'Unkown';    FreeMem(CNameBuffer,255);
        Dispose(CLen);end;
      

  2.   

    忘了
     ComputerName:string;
      

  3.   

    ok了!!!
    多谢aningstar(aningstar)! 给你加分!
      

  4.   

    刚写了一个简单的
    procedure TForm1.Button1Click(Sender: TObject);
    var
      Len : DWord;
      ComputerName:string;
    begin    Len:= 255;
        setlength(computername,255);
        GetComputerName(pchar(ComputerName),Len);
        setlength(ComputerName,strLen(pchar(ComputerName)));
       ShowMessage(ComputerName);
    end;
      

  5.   

    procedure TForm1.Button1Click(Sender: TObject);
    var NameOfComputer :pchar ;
    Len :Dword ;
    begin
      NameOfComputer :='' ;
      len :=255;
      windows.GetComputerName(NameOfComputer,Len);
      Application.MessageBox(NameOfComputer,'提示',0);
    end;