VC++ 得到计算机名和用户名 GetComputerName GetUserName

来源:互联网 发布:物联网如何传输数据 编辑:程序博客网 时间:2024/06/05 08:02

转载请标明出处,原文地址:http://blog.csdn.net/morewindows/article/details/8659417

欢迎关注微博:http://weibo.com/MoreWindows

 

在CSDN论坛上看到有帖子在问如何获得计算机名称及用户名。这个其实非常简单。二个函数——GetComputerNameGetUserName就搞定了。其函数原型如下:

一.GetComputerName

//By MoreWindows-(http://blog.csdn.net/MoreWindows)

BOOLWINAPIGetComputerName(

   __out        LPTSTRlpBuffer,

   __in_out      LPDWORDlpnSize

);

二.GetUserName

//By MoreWindows-(http://blog.csdn.net/MoreWindows)

BOOLWINAPIGetUserName(

   __out        LPTSTRlpBuffer,

   __in_out      LPDWORDlpnSize

);

直接上代码算了,这参数光看名字就知道什么意思了。 

[cpp] view plaincopyprint?
  1. // VC++得到计算机名称和用户名称     
  2. // http://blog.csdn.net/morewindows/article/details/8659417  
  3. //By MoreWindows-(http://blog.csdn.net/MoreWindows)    
  4. #include <windows.h>   
  5. #include <stdio.h>   
  6. int main()  
  7. {     
  8.     printf("    VC++得到计算机名称和用户名称 \n");          
  9.     printf(" -- By MoreWindows( http://blog.csdn.net/MoreWindows ) --\n\n");   
  10.   
  11.     const int MAX_BUFFER_LEN = 500;  
  12.     char  szBuffer[MAX_BUFFER_LEN];  
  13.     DWORD dwNameLen;  
  14.   
  15.     dwNameLen = MAX_BUFFER_LEN;  
  16.     if (!GetComputerName(szBuffer, &dwNameLen))   
  17.         printf("Error  %d\n", GetLastError());  
  18.     else  
  19.         printf("计算机名为: %s\n", szBuffer);  
  20.   
  21.     dwNameLen = MAX_BUFFER_LEN;  
  22.     if (!GetUserName(szBuffer, &dwNameLen))  
  23.         printf("Error  %d\n", GetLastError());  
  24.     else  
  25.         printf("当前用户名为:%s\n", szBuffer);  
  26.     return 0;  
  27. }  

运行结果如下: