我对C++编程中的COM智能指针类选择感到困惑:
目前我知道有 三种 四种选择:
ATL
中的CCOMPtr
- MS Com Support Classes 中的
_com_ptr_t
TComInterface
(因为我正在使用 C++Builder 2009)CCOMQIPtr
(我之前忘记了这个)
我已经了解了前两者的错误处理和异常处理的差异,但是 TComInterface
似乎完全没有记录。从我所了解的情况来看,前两者都存在意外行为或陷阱。
理想情况下,我希望找到一种干净而现代化的 C++ 智能指针,但据我所知,boost::com
并不存在...
我需要通过一个 TLB 文件控制另一个供应商提供的应用程序的 COM 接口。