分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!http://www.captainbed.net
随着系统安全性的加强,每个系统里越来越多不同的帐号登录。假如你正在开发一个上网安全软件,让不同的用户有不同的上网权限,这样就需要识别当前的用户是什么帐号登录了,然后再作出权限分配。还有出错时,也需要对当前帐号进行记录下来,因为不同的帐号有不同的权限,有些磁盘是不允许操作的。面对这些需求,就需要使用函数 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 ); #ifdef UNICODE #define GetUserName GetUserNameW #else #define GetUserName GetUserNameA #endif // !UNICODE lpBuffer 是获取名称缓冲区。 pcbBuffer 是缓冲区的大小和返回帐号的大小。 调用函数的例子如下: #001 // #002 // 获取当前登录用户的名称。 #003 // 蔡军生 2007/11/13 QQ:9073204 深圳 #004 void GetUserName(void) #005 { #006 // #007 const int nBufSize = UNLEN + 1; #008 TCHAR chBuf[nBufSize]; #009 ZeroMemory(chBuf,nBufSize); #010 #011 // 获取当前登录用户的名称 #012 DWORD dwRet = nBufSize; #013 if (::GetUserName(chBuf,&dwRet)) #014 { #015 // #016 OutputDebugString(chBuf); #017 } #018 else #019 { #020 OutputDebugString(_T(" 获取登录用户名称出错 !")); #021 } #022 #023 OutputDebugString(_T("/r/n")); #024 #025 }再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!http://www.captainbed.net