使用Qt應用程序使用webrtc庫運行時錯誤的解決筆記。
int main(...) { QApplication app(argc, argv); webrtc *w = createOneWebrtc(); return app.exec(); }
QWindowsContext: OleInitialize() failed: "COM error 0xffffffff80010106 RPC_E_CHANGED_MODE (Unknown error 0x080010106)"
OleInitialize是一個Windows API函數。它的做用是在當前單元(apartment)初始化組件對象模型(COM)庫,應用程序必須在調用COM庫函數以前初始化COM庫。每一個線程不能初始化屢次。web
int main(...) { QApplication app(argc, argv); QFuture<webrtc *> future = QtConcurrent::run(createOneWebrtc); webrtc *w = future.result(); return app.exec(); }