QQ登录

只需一步,快速开始

205上位机VC MFC获取计算机名用户名等信息

[ 复制链接 ]

205上位机VC MFC获取计算机名用户名等信息

205上位机VC MFC获取计算机名用户名等信息
205上位机VC MFC获取计算机名用户名等信息
功能展示
电脑都有用户名,计算机名等信息,用户可以用鼠标进行获取与设置也以编写代码实现,当前例程实现电脑系统计算机名用户名的获取与设置,效果如图;
要点提示
电脑用户名的获取可以用函数GetUserName() 计算机名可以用函数GetComputerName()获取,计算机名设置可以用函数SetComputerName()实现;
一.GetUserName() 函数原型GetUserName(lpBuffer: PChar; {缓冲区}var nSize: DWORD {缓冲区大小}):
参数定义:
参数 类型及说明
1.lpBuffer String,一个字串缓冲区,预先初始化成由nSize指定的长度。它将用于容纳用户名,是获取名称缓冲区。
2.nSize Long,初始化成lpBuffer的长度。返回以后,它会包含载入lpBuffer的字符数量 ,是缓冲区的大小和返回帐号的大小
二. GetComputerName()函数原型:BOOL WINAPIGetComputerName(__out LPTSTRlpBuffer,__inout LPDWORDlpnSize);
参数定义:
1.lpBuffer [out]指向一块内存缓冲区,这个缓冲区用于接收计算机名称或群集的虚拟服务器名称。缓冲区的大小应该足够大,以便能够容纳MAX_COMPUTERNAME_LENGTH + 1个字符。
2.lpnSize [in, out]在输入时,指定的缓冲区的大小,这个大小是按照TCHAR计算的。
在输出的时候,字符的长度不包括终止空字符\0。如果缓冲区太小,该函数将失败,调用GetLastError返回ERROR_BUFFER_OVERFLOW。
实现功能
1.新建基于对话框的应用程序
2.拖拽一编辑框ID为IDC_EDIT1,用于显示获取信息;依次添加按钮<获取电脑拥有者名称><获取系统用户名><获取计算机名><设置电脑名称>实现相应功能
  1. void CGkbc8Dlg::OnPcownername()
  2. {
  3.         CString sText="电脑拥有者:";
  4.         HKEY hKey;
  5.         LPCTSTR StrKey="Software\\Microsoft\\Windows NT\\CurrentVersion";
  6.         if (ERROR_SUCCESS==::RegOpenKeyEx(HKEY_LOCAL_MACHINE,StrKey,NULL,KEY_ALL_ACCESS,&hKey))
  7.         {
  8.                 DWORD dwSize=255,dwType=REG_SZ;
  9.                 char String[256];        
  10.                 LPCSTR KeyValue="RegisteredOwner";
  11.                 if (ERROR_SUCCESS==::RegQueryValueEx(hKey,KeyValue,0,&dwType,(BYTE *)String,&dwSize))
  12.                         sText+=String;
  13.         }
  14.         sText+="\r\n电脑所有者单位:";        
  15.         if (ERROR_SUCCESS==::RegOpenKeyEx(HKEY_LOCAL_MACHINE,StrKey,NULL,KEY_ALL_ACCESS,&hKey))
  16.         {
  17.                 DWORD dwSize=255,dwType=REG_SZ;
  18.                 char String[256];        
  19.                 LPCSTR KeyValue="RegisteredOrganization";
  20.                 if (ERROR_SUCCESS==::RegQueryValueEx(hKey,KeyValue,0,&dwType,(BYTE *)String,&dwSize))
  21.                         sText+=String;
  22.                 ::RegCloseKey(hKey);
  23.         }
  24.         MessageBox(sText);}
复制代码
  1. void CGkbc8Dlg::OnUsername()
  2. {
  3.         char cName[_MAX_PATH];
  4.         DWORD dwSize=_MAX_PATH;
  5.         ::GetUserName(cName,&dwSize);
  6.         //<>
  7.         SetDlgItemText(IDC_EDIT1,cName);
  8. }

  9. void CGkbc8Dlg::OnPcname()
  10. {
  11.         char cName[_MAX_PATH];
  12.         DWORD dwSize=_MAX_PATH;
  13.         ::GetComputerName(cName,&dwSize);
  14.         //<>
  15.         SetDlgItemText(IDC_EDIT1,cName);        
  16. }

  17. void CGkbc8Dlg::OnSetpcname() //要权限
  18. {
  19.         CString sComputerName="gkbc8";
  20.         if(::SetComputerName(sComputerName))
  21.                 MessageBox("设置成功,重启电脑生效","提示",MB_OK);
  22. }
复制代码
另外计算机名的设置 在WIN7上得获得管理员权限,具体获取方法前面例程已介绍过,也可看视频演示学习
我们来演示下功能实现的整个过程
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:205.上位机VC MFC获取计算机名用户名等信息.rar 
文件大小:140 KB  售价:10金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我

  

您的支持是我们创作的动力!  

  

您可花点闲钱积分自助任意充值

  

成为VIP会员 全站资源任意下载永久更新!


回复

使用道具 举报

快速回复 返回列表 客服中心 搜索