如题,不知道是什么原因,高手请指教.

解决方案 »

  1.   

    我用了API函数:getcomputername后,再对窗口做hide,show,等动作就出错了,好像有什么冲突.错误提示应用程序出错.
      

  2.   

    procedure Tform.BitBtn2Click(Sender: TObject);
    var computername:pchar;
        w:DWORD;
    begin
      w:=30;
      GetComputerName(computername,w);
      if computername='444'then
      form.show;
    end;
      

  3.   

    procedure Tform.BitBtn2Click(Sender: TObject);
    var
    ComputerName: array[0..127] of Char;
        w:DWORD;
    begin
      w:=SizeOf(Computername);
      GetComputerName(computername,w);
      if computername='444'then
      form.show;
    end;
      

  4.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      computername:pchar;
      w:DWORD;
    begin  w:=128;
      computername := AllocMem(w);
      GetComputerName(computername,w);
      ShowMessage(ComputerName);
      FreeMem(computername,w);
      ...end;
      

  5.   

    getit911(Windows转Linux中) 的说法正确
      

  6.   

    var Computername: PChar;
        W: DWORD;
    begin
      GetMem(Computername, MAX_COMPUTERNAME_LENGTH);
      GetComputerName(Computername, W);
      Edit1.Text := Computername;
      FreeMem(Computername);
    end;函数声明为:
    GetComputerName(lpBuffer: PAnsiChar; var nSize: Cardinal);
    lpBuffer:为内存缓冲区,要动态分配内存。
    W:指向的值应该大于等于MAX_COMPUTERNAME_LENGTH+1