0

我对 Windows 编程很陌生。这是我的代码

objIWbemLocator = new QAxObject("WbemScripting.SWbemLocator");
objWMIService = objIWbemLocator->querySubObject("ConnectServer(QString&,QString&)",QString("."),QString("root\\cimv2"));

QAxObject* returnList = objWMIService->querySubObject("ExecQuery(QString&)", QString("select * from %1").arg(domain));
QAxObject* result = returnList->querySubObject("ItemIndex(int)", 0);

我在运行时收到错误

Qt ActiveX WMI QAxBase::dynamicCallHelper: ItemIndex(int): No such property in

但是ItemIndex 方法存在

4

1 回答 1

1

MSDN

ItemIndex 方法不适用于不包含 SWbemObjects 的集合,例如 SWbemMethodSet、SWbemNamedValueSet、SWbemPrivilegeSet、SWbemPropertySet 和 SWbemQualifierSet。

你在选择什么?您是否尝试过迭代集合?另外,您需要最低限度的 Windows Vista 才能使用 ItemIndex 方法。我希望这有帮助

于 2011-05-26T08:05:17.940 回答