C++ 获取OEM String
来源:互联网 发布:中国大数据专家委员会 编辑:程序博客网 时间:2024/06/07 22:24
工作过程中需要读取机器OEM String信息,读取该信息最简便的方法是采用WMIC。
1.批处理脚步读取
打开DOS命令后窗口,键入wmic computersystem get OEMStringArray,即可读取机器OEM String信息。
2.powershell读取
打开powershell界面,键入(get-wmiobject -class Win32_ComputerSystem).OEMStringArray即可
3.C++读取
在文章利用WMI获取本机信息http://blog.csdn.net/cnuserfdg/article/details/51759694中,当OEMStringArray作为输入参数时,并不能获取到目的字符串,这是由于此时VARIANT变体中存储的返回值为数组。
修改代码如下即可返回目的字符串。
hr = m_szIWbemObject[i]->Get(pTargetCaption, 0, &var, NULL, NULL);if (var.vt != VT_NULL){SAFEARRAY *pArr = nullptr;BSTR vbStr = nullptr;pArr = V_ARRAY(&var);if (SafeArrayGetDim(pArr)!=1){strRet = var.bstrVal;}else{LONG lLeft = 0;LONG lRight = 0;SafeArrayGetLBound(pArr, 1, &lLeft);SafeArrayGetUBound(pArr, 1, &lRight);LONG arrayCount = lLeft;while (arrayCount<=lRight){if (SafeArrayGetElement(pArr,&arrayCount,&vbStr) == S_OK){strRet += vbStr;strRet += _T(" ");}arrayCount++;}}if (vbStr!=nullptr){SysFreeString(vbStr);vbStr = nullptr;}break;}
0 0
- C++ 获取OEM String
- 获取笔记本电脑oem激活密钥
- OEM?
- OEM
- OEM
- OEM
- OEM
- OEM
- oem 12c 自定义监控项
- C++——获取array,vector,string的元素个数
- 获取资源string /string【】
- 安装oracle OEM 12c的过程(简单版)
- 一次OEM 12c不能正确启动的问题
- Oracle 13c OEM 安装测试(13.2.0.0)
- c++String
- c++string
- C++string
- C#string
- 经典查询练手第三篇(不懂装懂,永世饭桶!)
- linux下文件访问时间、修改时间、更改时间
- UOJ 225 [UR #15]奥林匹克五子棋
- maven项目编译没有calss文件,和找不到类,maven导入报错?
- 线程的优先级
- C++ 获取OEM String
- 15.1
- Git常用命令
- 经典查询练手第四篇(不懂装懂,永世饭桶!)
- Singleton设计模式简介
- Linux GCC常用命令
- 经典查询练手第五篇(不懂装懂,永世饭桶!)
- 15.2
- C语言实现压缩二例