gpt4 book ai didi

c++ - Win32_PhysicalMedia SerialNumber 有时顺序错误

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:40:54 25 4
gpt4 key购买 nike

引用MSDN我修改了一些代码,以便我可以检索硬盘序列号

hres = pSvc->ExecQuery(
bstr_t("WQL"),
bstr_t("SELECT SerialNumber FROM Win32_PhysicalMedia"),
WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY,
NULL,
&pEnumerator);
..
..<other code here>
..
hr = pclsObj->Get(L"SerialNumber", 0, &vtProp, 0, 0);

我将 vtProp.bstrVal 转换为 std::wstring 并执行反向字符串,我必须将 vtProp.bstrVal 的结果反向的原因是因为我发现我用来检索序列号的某些计算机顺序错误

例如:计算机 1 返回序列号:W[space]-DXW1M6EC01056,我必须做一个反向字符串使其成为 [space]WD-WXM1E60C0165 与标签上的比较后是正确的硬盘

但是当我测试时计算机 2 返回序列号:WD-WXM1E60C0165(我使用相同的代码,当我检查硬盘上的序列标签时,它实际上返回正确)如果我的代码执行反向字符串,它将变为 W[space]-DXW1M6EC01056

两台电脑都查了,都是小端,不知道跟字节序有没有关系。

有没有什么东西让返回结果顺序不同?硬盘制造商/品牌?我在 Windows XP Pro 中运行该程序以获得所有测试结果。

最佳答案

关于c++ - Win32_PhysicalMedia SerialNumber 有时顺序错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11237402/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com