У меня есть приложение, в котором запущен клиентский браузер Chromium, и в какой-то момент мне нужно выполнить код WMI для доступа к некоторой информации об устройстве, но оно каждый раз дает сбой.Работает только тогда, когда приложение не использует объект TChromium.Возможный TChromium (CEF3) Инициализирует библиотеку COM, и в текущем потоке разрешен только один экземпляр.Я читал, что приложение должно использовать CoInitializeEx с COINIT_APARTMENTTHREADED вместо CoInitialize.
Можно ли получить доступ к библиотеке COM и CoInitializeSecurity при использовании TChromium (CEF3) в одном приложении?Если да, то как это сделать?
Ниже приведено то, чего я хочу достичь:
CoUninitialize();
CoInitialize(NULL);
if(CoInitializeSecurity(NULL, -1, NULL, NULL, RPC_C_AUTHN_LEVEL_PKT, RPC_C_IMP_LEVEL_IMPERSONATE, NULL, EOAC_NONE, 0) == S_OK)
{
// cannot get here, CoInitializeSecurity fails
... need to execute WMI code using IWbemLocator, IWbemServices ...
}