社区
ATL
帖子详情
关于BSTR的使用
ink8852
2003-07-18 10:59:14
初识COM,问题多多,苦于手头资料不够。
关于CComBSTR、BSTR、CcomVariant及_bstr_t的概念、使用以及它们之间的关系是什么,那伟大虾能够详解一下,或者告诉我哪里有,我自己去看也可以!多谢~~~~
...全文
232
11
打赏
收藏
关于BSTR的使用
初识COM,问题多多,苦于手头资料不够。 关于CComBSTR、BSTR、CcomVariant及_bstr_t的概念、使用以及它们之间的关系是什么,那伟大虾能够详解一下,或者告诉我哪里有,我自己去看也可以!多谢~~~~
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ink8852
2003-08-07
打赏
举报
回复
谢谢大家!
navychen
2003-07-22
打赏
举报
回复
我觉得BSTR就是个指针, 要手工分配释放内存。其他的都是类,可以自动构造释放。
wqf2
2003-07-22
打赏
举报
回复
xtuzi(雨人) 说得不对!!!而lcp(dupi) ,zhp80(zhp80) ,Analyst()都回答得很好,楼主可以结贴了。
ailanrenxfl
2003-07-22
打赏
举报
回复
你用“BSTR”google一下,有好几篇讲的很好
zhp80
2003-07-18
打赏
举报
回复
BSTR = CComBSTR.Copy();
BSTR = CComBSTR.Detach( );
CComBSTR = BSTR;
CComBSTR.AppendBSTR(BSTR);
CComBSTR.Attach(BSTR);
_bstr_t = BSTR;
_bstr_t.Assign(BSTR); ---.net
_bstr_t.Attach(BSTR); ---.net
BSTR = _bstr_t.Copy();
BSTR = _bstr_t.Detach( ); ---.net
CString = BSTR;
BSTR = CString.AllocSysString();
BSTR = CString.SetSysString(&BSTR);
CComVariant = BSTR;
if (CComVariant.vt == VT_BSTR) BSTR = CComVariant.bstrVal;
BSTR WINAPI
SysAllocString
SysAllocStringByteLen
SysReAllocString
SysAllocStringLen
SysReAllocStringLen
SysFreeString
lcp
2003-07-18
打赏
举报
回复
BSTR是一种文本数据类型,是包含长度前缀的OLECHAR字符串。
CComBSTR封装了BSTR,包括初始化,释放,拷贝,类型转化等。
有时,我们需要在对数据类型一无所知的情况下向它传递参数,这就要用到:
Variant,包含了数据类型和数据的值两个域;
CComVariant封装了Variant数据类型和相关的操作。
其实挺简单的,你把Variant看作是自己指定了类型的void就好了。
xtuzi
2003-07-18
打赏
举报
回复
BSTR 等同于WCHAR类型的字符串
Analyst
2003-07-18
打赏
举报
回复
BSTR是原始类型,CComBSTR和_bstr_t是BSTR的C++封装类。_variant_t和CcomVariant是VARIANT的封装类。
另外_bstr_t要比CComBSTR好用。
FAICHEN
2003-07-18
打赏
举报
回复
可以转换
common_man
2003-07-18
打赏
举报
回复
http://www.pcvc.net/category/content.asp?sendid=8
xwsn007
2003-07-18
打赏
举报
回复
up
Com中
BSTR
的
使用
详解一:
BSTR
:
BSTR
(Basic STRing)实际上是类Pascal字符串,在
BSTR
的前4个字节保存了字符串长度,所以
BSTR
内部可以包括/0,它也不是靠/0来判断字符串结尾的。
BSTR
在c/c++中的定义实际上是wchar_t*,但因为
BSTR
是依靠前4个字节来判断字符串长度的,所以它的分配和释放都不同于普通的字符串,需要通过::SysAllocString和::SysFreeString等函数来分配和释放。
Com的接口中要
使用
字符串的
BSTR
详解三 -
BSTR
使用
注意事项
BSTR
详解三 -
BSTR
使用
注意事项2007-9-7 21:34:12 1 How to use
BSTR
1.1
BSTR
分析
BSTR
设计对于C++程序员好坏参半。 一方面,
BSTR
可以被用于大多数需要OLECHAR数组作为参数的函数。另一方面,不能用熟悉的C/C++函数进行对
BSTR
的分配、释放和处理,例如malloc, fr
国央企创新负责人在推动企业转型时,如何获取最新的行业技术趋势和竞争情报?.docx
科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。
科技中介服务机构如何通过产业大脑提升服务效率与客户粘性?.docx
科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。
国央企创新负责人如何借助科创数智大脑支撑技术攻关与协同创新?.docx
国央企创新负责人如何借助科创数智大脑支撑技术攻关与协同创新?
ATL
3,248
社区成员
48,530
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章