工作过程中需要读取机器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);
SafeArrayGetUBou