windowsapi函数库:Windows API一日一练(72)GetUserName函数



  随着系统安全性加强每个系统里越来越多区别帐号登录假如你正在开发个上网安全软件Software让区别用户有区别上网权限这样就需要识别当前用户是什么帐号登录了然后再作出权限分配还有出错时也需要对当前帐号进行记录下来区别帐号有区别权限有些磁盘是不允许操作面对这些需求就需要使用GetUserName

  GetUserName声明如下:

WINADVAPI
BOOL
WINAPI
GetUserNameA (
    __out_ecount_part(*pcbBuffer, *pcbBuffer) LPSTR lpBuffer,
    __inout LPDWORD pcbBuffer
    );
WINADVAPI
BOOL
WINAPI
GetUserNameW (
    __out_ecount_part(*pcbBuffer, *pcbBuffer) LPWSTR lpBuffer,
    __inout LPDWORD pcbBuffer
    );
#def UNICODE
# GetUserName GetUserNameW
#
# GetUserName GetUserNameA
#end // !UNICODE


  lpBuffer是获取名称缓冲区

  pcbBuffer是缓冲区大小和返回帐号大小

  例子如下:

#001 //
#002  //获取当前登录用户名称
#003  //蔡军生 2007/11/13 QQ:9073204 深圳
#004  void GetUserName(void)
#005  {
#006         //
#007         const  nBufSize = UNLEN + 1;
#008         TCHAR chBuf[nBufSize];
#009         ZeroMemory(chBuf,nBufSize);
#010 
#011         //获取当前登录用户名称
#012         DWORD dwRet = nBufSize;
#013         (::GetUserName(chBuf,&dwRet))
#014         {
#015               //
#016               OutputDebugString(chBuf);                
#017         }
#018         
#019         {
#020               OutputDebugString(_T("获取登录用户名称出错!"));              
#021         }
#022 
#023         OutputDebugString(_T("\r\n"));
#024 
#025  }


Tags:  api函数大全 api函数 windowsapi函数 windowsapi函数库

延伸阅读

最新评论

发表评论