COleVariant

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情
  1. 使用COleVariant 传递基本数据类型

COleVariant  vTrue(TRUE,VT_BOOL); 

COleVariant  vFalse(FALSE,VT_BOOL);


错误用法,导致构造函数版本不明确.

COleVariant::COleVariant(long,VARTYPE)

COleVariant::COleVariant(short,VARTYPE)


正确用用法,COleVariant opt((long)DISP_E_PARAMNOTFOUND, VT_ERROR);


COleVariant  vFileName((LPCTSTR)pszFilePath);



  1. 使用COleVariant  传递 特殊的参数

COleVariant  vOpt((long)DISP_E_PARAMNOTFOUND, VT_ERROR);//代表可选参数

http://msdn.microsoft.com/en-us/library/bb221597(v=office.12).aspx

msdn的一个例子,expression.SaveAs(FileNameFileFormatLockCommentsPasswordAddToRecentFilesWritePasswordReadOnlyRecommendedEmbedTrueTypeFontsSaveNativePictureFormatSaveFormsDataSaveAsAOCELetterEncodingInsertLineBreaks,AllowSubstitutionsLineEndingAddBiDiMarks)

所有参数都是可选项, 不能够使用c++ 中的默认参数的调用方式,需要:

COleVariant opt((long)DISP_E_PARAMNOTFOUND, VT_ERROR);

doc.SaveAs( &FileName, &FileFormat,opt , opt,\
opt, opt,opt , \
opt, opt,opt,\
opt, opt,opt ,opt, \
opt,opt);

这样调用才行.

COleVariant和CByteArray VC中常用的动态数组 如果是字节就用CByteArray 如果是字就可以用CWordArray 立即下载

相关推荐

COleVariant的转换

1.转为int型 var.ChangeType(VT_I4);   int i=var.intVal;  2. COleVariant是数据库常用到的数据类型。它可以是字串,整型值,日期等。知道怎样将它转换为CString很有用处。 设有CString A; COleVariant B; 来看看怎样将COleVariant转换为CString: switch(B.vt){

fin86889003的专栏 2145

【温故而知新】C和C++篇外篇:COleVariant类型

今天在做一个windows平台的小工具顺便熟悉一下windows开发的一些基础知识,在这个过程中,发现了

Workshop of Wenjie.Yin 4925

MFC之COleVariant

COleVariant 本质上是一个枚举,用同一种类型来表达不同的子类型。如同boost中的variant。 例子 COleVariant var(3.6f); float v = var.fltVal; CString str("testCOleVariant"); COleVariant var2(str); CString cpStr(var2.bstrVal); 例子 CStrin

dreamcs的专栏 2万+

COleVariant

http://topic.csdn.net/t/20010703/09/179360.htmlCOleVariant 封装了VARIANT。         m_pUsersSet   =   new   CDaoRecordset(   m_pDB   );     strSQL.Format(   _T("select   *   from   [Users]   where   Logi

我的一些记录 1万+

COleVariant和VARIANT转换为CString类型

COleVariant是数据库常用到的数据类型。它可以是字串,整型值,日期等。知道怎样将它转换为CString很有用处。         设有CString A; COleVariant B; 来看看怎样将COleVariant转换为CString:         switch(B.vt){             case VT_BSTR:  A=B.bstrVal; bre

曾经沧海 2430

认识和使用COleVariant

有时候会用到COleVariant类型数据.比如在CDaoRecordset::SetFieldValue()和GetFieldValue()中. 

我的一些记录 2143

BYTE 和 COleVariant 相互转换

#include BOOL GetBinaryFromVariant(COleVariant & ovData, BYTE ** ppBuf, unsigned long * pcBufLen) { BOOL fRetVal = FALSE; //Binary data is stored in the variant as an array of unsigned ch

zgl7903的专栏 3433

_variant_t、CComVariant与COleVariant、CDBVariant

目前计算机语言多种多样,如C++、Java、Basic、Pascal等,此外还有JavaScript、VBScript、ActionScript等脚本语言,它们各自维护自己的数据类型,当使用C++这样强类型的语言来读取数据库或者与其他语言之间来交换数据时,它很有可能不知道获取到的数据的具体类型,这个时候必须借助于变体类型读取数据。VARIANT数据类型就具有跨语言的特性,同时它可以表示(存储)任意

月落满楼 4380

COleVariant 的使用

使用COleVariant 传递基本数据类型COleVariant  vTrue(TRUE,VT_BOOL);COleVariant  vFalse(FALSE,VT_BOOL);COleVariant  vFileName((LPCTSTR)pszFileP

418

VARIANT、_variant_t 与 COleVariant 相互转换

VARIANT的结构可以参考头文件VC98/Include/OAIDL.H中关于结构体tagVARIANT的定义。 对于VARIANT变量的赋值:首先给vt成员赋值,指明数据类型,再对联合结构中相同数据类型的变量赋值,举个例子: VARIANT va; int a=2001; va.vt=VT_I4;///指明整型数据 va.lVal=a; ///赋值 对于不马上赋值的

冷秋魂的专栏 2397

字符串转换系列三:VARIANT、COleVariant 和_variant_t

  三、VARIANT、COleVariant 和_variant_t  在OLE、ActiveX和COM中,VARIANT数据类型提供了一种非常有效的机制,由于它既包含了数据本身,也包含了数据的类型,因而它可以实现各种不同的自动化数据的传输。下面让我们来看看OAIDL.H文件中VARIANT定义的一个简化版:struct tagVARIANT { VARTYPE vt; union {  sho

timewolf的专栏 1万+

MFC之COleVariant

COleVariant本质上是一个枚举,用同一种类型来表达不同的子类型。如同boost中的variant。  COleVariant类是对VARIANT结构的封装。  VARIANT 结构包含两部分。其一是 VARTYPE 型的成员变量vt;其二是个联合类型,这个联合包含了VC常用的几乎所有类型。因为联合用的是相同的存储空间,因此对联合的内容的解释依赖于 vt。  例如,  若 vt 的...

weixin_30598225的博客 668

VARIANT 、_variant_t 与 COleVariant

_variant_t转化成char* ch;ch = (char*)(_bstr_t)vt; =================================VARIANT的结构可以参考头文件VC98\Include\OAIDL.H中关于结构体tagVARIANT的定义。 对于VARIANT变量的赋值:首先给vt成员赋值,指明数据类型,再对联合结构中相同数据类型的变量赋值,举个例子:...

dizi9750的博客 258

COleVariant与常用基本数据类型之间的转换

http://hi.baidu.com/ton666/item/0f52fd430783b9e01381dac5 http://blog.csdn.net/limitedlove/article/details/1648315 VARIANT 结构包含两部分。其一是 VARTYPE 型的成员变量vt;其二是个联合类型,这个联合包含了VC常用的几乎所有类型。因为联合用的是相同的存储空间,因此对联

bytxl的专栏 3414

转:MFC之COleVariant

COleVariant本质上是一个枚举,用同一种类型来表达不同的子类型。如同boost中的variant。 例子 [cpp]view plaincopy COleVariantvar(3.6f); floatv=var.fltVal; CStringstr("testCOleVariant"); COleVariantvar2(st...

weixin_30437847的博客 325

【ZZ】COleVariant与常用基本数据类型之间的转换

COleVariant是数据库常用到的数据类型。它可以是字串,整型值,日期等。知道怎样将它转换为CString很有用处。         设有CString A; COleVariant B; 来看看怎样将COleVariant转换为CString:         switch(B.vt){             case VT_BSTR:  A=V_BSTRT(&B); b

水手柯察金的专栏 1369
上一篇: ActiveX Events and MFC State
下一篇: vc操作word的简单例子
bsnry
博客等级 码龄15年 66粉丝 26原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值