C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Использование WMI в CBuilder, Использование WMI в CBuilder
** Павел
Отправлено: 06.01.2005, 08:03


Не зарегистрирован







Привет всем. Пишу на CBuilder 6.0. Возникли вопросы.
Вопрос 1. Пытаюсь прочитать через WMI значение какого-нибудь свойства какого-нибудь класса.
Импортировал Active DS Type Library (Version 1.0). Подключился.
CoInitialize(NULL);
CoCreateInstance(CLSID_WbemLocator, 0,CLSCTX_INPROC_SERVER, IID_IWbemLocator, (LPVOID *) &pLoc);
pLoc->ConnectServer(NS,NULL, NULL, 0, NULL, 0, 0, &pSvc);
Получил описание интересующего класса типа IWbemClassObject с помощью IWbemServices::GetObject
pSvc->GetObject(CL,WBEM_FLAG_USE_AMENDED_QUALIFIERS,NULL,&pObj,NULL);
Как теперь из него вытащить экземпляр класса, а затем прочитать значение?

Вопрос 2. Пытаюсь получить экземпляр класса с помощью IWbemServices::CreateInstanceEnum. Почти для всех классов, например, для Win32_DiskDrive возвращает WBEM_E_ACCESS_DENIED. Пример вызова функции:
AnsiString cl="Win32_DiskDrive";
wchar_t CL[50];
cl.WideChar(CL,50);
hres=pSvc->CreateInstanceEnum(CL,WBEM_FLAG_USE_AMENDED_QUALIFIERS,NULL,&pEnum);

Вопрос 3. Как подключиться к WMI удаленного компьютера под учетной записью этого же удаленного компьютера?

Вопрос 4. Где взять русскую документацию, статьи по WMI SDK.

Вернуться в Вопросы программирования в C++Builder