获得系统信息---用户名称.计算机名称,操作系统名称

//获得用户名称
 UpdateData();
 char username[MAX_PATH];
 CString strusername;
 DWORD Size=MAX_PATH;
 ::GetUserName(username,&Size);
 strusername.Format("%s",username);
 m_username=strusername;
 UpdateData(false);
 //----------------------------------------------------------------
 //获得计算机名称
 UpdateData();
 char computername[MAX_PATH];
 CString strcomputerusername;
 DWORD Size1=MAX_PATH;
 ::GetComputerName(computername,&Size1);
 strcomputerusername.Format("%s",computername);
 m_computername=strcomputerusername;
 UpdateData(false);
 //----------------------------------------------------------------
 //获得计算机操作系统名称
 UpdateData();
 HKEY hKey;
 LPCTSTR StrKey="Software\\Microsoft\\Windows NT\\CurrentVersion"; 
 if(ERROR_SUCCESS==::RegOpenKeyEx(HKEY_LOCAL_MACHINE,StrKey,NULL,KEY_ALL_ACCESS,&hKey))
 {
  DWORD dwsize=225,dwType=REG_SZ;
  char String[50];//计算机操作系统名称
  char String1[20];//计算机操作系统版本号
  //char String2[256];//计算机操作系统版本名称
  LPCSTR KeyValue="ProductName";//计算机操作系统名称
  LPCSTR KeyValue1="CurrentVersion";//计算机操作系统版本号
  //LPCSTR KeyValue2="CurrentBuildName";//计算机操作系统版本名称
  if((ERROR_SUCCESS==::RegQueryValueEx(hKey,KeyValue,0,&dwType,(BYTE *)String,&dwsize))&&(ERROR_SUCCESS==::RegQueryValueEx(hKey,KeyValue1,0,&dwType,(BYTE *)String1,&dwsize))/*||(ERROR_SUCCESS==::RegQueryValueEx(hKey,KeyValue2,0,&dwType,(BYTE *)String2,&dwsize))*/)
  {
   CString strdata=String;//计算机操作系统名称
   CString strdata1=String1;//计算机操作系统版本号
   //CString strdata2=String2;//计算机操作系统版本名称
   m_winsysname=strdata+" "+strdata1;//+" "+strdata2;
  }
  ::RegCloseKey(hKey);
 }
 UpdateData(false);

posted on 2006-06-24 07:26  路吾  阅读(738)  评论(0)    收藏  举报

导航