- if (FAILED(CoCreateInstance(CLSID_TF_ThreadMgr, nullptr, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&thread)))) {\r
+ HRESULT hr = CoCreateInstance(CLSID_TF_ThreadMgr, nullptr, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&thread));\r
+ if (hr == CO_E_NOTINITIALIZED) {\r
+ hr = CoInitializeEx(nullptr, COINIT_APARTMENTTHREADED);\r
+ if (FAILED(hr)) {\r
+ DebugLog("CoInitializeEx failed.");\r
+ return;\r
+ }\r
+ if (hr == S_FALSE)\r
+ CoUninitialize();\r
+ hr = CoCreateInstance(CLSID_TF_ThreadMgr, nullptr, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&thread));\r
+ }\r
+ if (FAILED(hr)) {\r