procedure TForm1.Button3Click(Sender: TObject);
var
sBuffer: PChar;
sSize: Cardinal;
begin
sSize := 255;
GetMem(sBuffer, sSize + 1);
try
if GetComputerName(sBuffer, sSize) then
label1.caption:= sBuffer;
finally
FreeMem(sBuffer);
end;
end;

解决方案 »

  1.   

    procedure Tform1.Button1Click(Sender: TObject);
    var
      ComputerName: PChar;
      size: DWord;
    begin
      GetMem(ComputerName,255);
      size := 255;
      //获取计算机名称
      if GetComputerName(ComputerName,size)=False then
      begin
        Messagebox(Handle,'获取计算机名称失败!','Error',MB_OK+MB_ICONERROR);
        FreeMem(ComputerName);
        exit;
      end;
      Edit1.Text := ComputerName;
      Freemem(ComputerName);
    end;
      

  2.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
    computername:array [1..255] of Char;
    sSize: Cardinal;
    begin
    sSize := 255;
    GetComputerName(computername, sSize)end;
      

  3.   

    读注册表或用D6中TIdIPWatch控件,有LocalName属性...
      

  4.   

    var
       name:array [0..63] of char;
     
    gethostname(name,sizeof(name));
      

  5.   

    不用这么麻烦,在delphi6中有一个控件叫IdIpWatch,用它的LocalName属性就行了