_variant_t(IDispatch* pSrc, bool fAddRef) 使用一个COM组件的指针构造一个_variant_t类型的对象
来源:互联网 发布:linux卸载mysql数据库 编辑:程序博客网 时间:2024/06/10 13:38
COM interface pointer => _variant_t
Constructs a _variant_t object of type VT_DISPATCH from a COM interface pointer. IffAddRef istrue, thenAddRef is called on the supplied interface pointer to match the call toRelease that will occur when the_variant_t object is destroyed. It is up to you to callRelease on the supplied interface pointer. IffAddRef is false, this constructor takes ownership of the supplied interface pointer; do not callRelease on the supplied interface pointer.
使用一个COM组件的指针构造一个_variant_t类型的对象。
如果fAddRef为真时,会调用COM组件的AddRef函数为该组件添加一个引用。AddRef函数和Release函数相对应,当_variant_t销毁的时候调用会调用Release函数。至于原来的COM组件调用不掉用Release由你自己决定。如果fAddRef为假时,这个_variant_t对象就取得了这个COM组件的所有权,原来的COM组件就不能再调用Release了。
for example:
_ConnectionPtr m_pConnect;
m_pConnect.CreateInstance("ADODB.Connection");
// 以下几种情况一样:
1、_variant_t v1 = (_variant_t)(IDispatch*)m_pConnect;
2、_variant_t v2 = _variant_t((IDispatch*)m_pConnect, true);
3、_variant_t v3 = _variant_t((IDispatch*)m_pConnect, false);
m_pConnect->AddRef();
- _variant_t(IDispatch* pSrc, bool fAddRef) 使用一个COM组件的指针构造一个_variant_t类型的对象
- _variant_t类型的使用
- 怎么判断_variant_t的值是什么类型
- ADO中_variant_t 的若干常用类型
- _variant_t与相关类型之间的转换
- _variant_t与相关类型之间的转换
- 对_variant_t的认识
- _variant_t 变量的处理
- VC,把一个int转换为_variant_t类型
- _variant_t
- _variant_t
- _variant_t
- _variant_t
- _variant_t使用
- _variant_t类型和CString类型、CTime类型的相互转换
- _variant_t的类型解说以及如何转换成其它类型
- 将 _variant_t 类型的变量,转换成字符串
- MFC ADO中两个_variant_t类型的变量连接
- printf格式
- Read/Write SD Files on Android
- 关于java.io.IOException: Cannot run program "unzip":
- 二维数组作为参数传递问题
- oracle shared pool
- _variant_t(IDispatch* pSrc, bool fAddRef) 使用一个COM组件的指针构造一个_variant_t类型的对象
- Scheme与Haskell
- Android NDK开发初步
- 端口状态说明 LISTENING、ESTABLISHED、TIME_WAIT及CLOSE_WAIT
- java笔试题
- 黑马程序员 -- 多线程
- Android震动系统结构 移植与调试的要点
- 英特尔Mooly Eden:力压Jeff Bezos的《财富》科技创想家
- NSAutoReleasePool使用中drain和release的区别