Last Updated 2005/01/28 |
Programming Tips Visual C++ MFC スレッド | 索 引 |
スレッドでOLE使用
2005/01/28
ユーザーインターフェイススレッドを作成して,そのスレッドで OLE(ActiveX) を使用する. VC++4.2 までは スレッドの InitInstance() にて AfxOleInit(); としなければならない. ところが,VC++5.0 や VC++6.0 ではスレッドが終了しなくなってしまう. AfxEndThread() のサンク呼び出しにて止まっているからである. AfxOleInit() を外すと正常に終了するようになるが,そうすると OLE が使用できなくなる. 回避方法は,AfxOleInit() の変わりに CoInitialize() を使用する. (終了時には CoUninitialize() を使用) 参照 |
|