function GetUserName: AnsiString;
var
   lpName: PAnsiChar;
   lpUserName: PAnsiChar;
   lpnLength: DWORD;
begin
  Result := '';
  lpnLength := 0;
  WNetGetUser(nil, nil, lpnLength); // 取得字串长度
  if lpnLength > 0 then
  begin
    GetMem(lpUserName, lpnLength);
    if WNetGetUser(lpName, lpUserName, lpnLength) = NO_ERROR then
       Result := lpUserName;
    FreeMem(lpUserName, lpnLength);
  end;
end; { GetUserName }

解决方案 »

  1.   

    // 取得用户名称 
    function GetUserName: AnsiString; 
    var 
    lpName: PAnsiChar; 
    lpUserName: PAnsiChar; 
    lpnLength: DWORD; 
    begin 
    Result := ''; 
    lpnLength := 0; 
    WNetGetUser(nil, nil, lpnLength); // 取得字串长度 
    if lpnLength > 0 then 
    begin 
    GetMem(lpUserName, lpnLength); 
    if WNetGetUser(lpName, lpUserName, lpnLength) = NO_ERROR then Result := lpUserName; 
    FreeMem(lpUserName, lpnLength); 
    end; 
    end; { GetUserName } 
      

  2.   

    to saoren(qsl) 
     老兄,咱们这么默契。   :)