首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将BSTR转换为LPCWSTR

将BSTR转换为LPCWSTR
EN

Stack Overflow用户
提问于 2013-05-17 22:22:29
回答 3查看 8.5K关注 0票数 3

这是我的需求

代码语言:javascript
复制
BSTR l_strArgs;
LPCWSTR  sth;
//----
//---
OutputDebugStringW(sth);

如何将BSTR转换为LPCWSTR?

有没有将字符串类型(Microsoft)转换为LPCWSTR类型的只包含头文件的库?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-05-17 22:27:40

只需介绍NULL场景,您就可以开始工作了

代码语言:javascript
复制
BSTR l_strArgs;
LPCWSTR sth = strArgs ? strArgs : L"";

正如您在标记中提到的ATL,下面是ATL风格的一行代码:

代码语言:javascript
复制
OutputDebugString(CString(l_strArgs));

或者,要确保您留在Unicode域中:

代码语言:javascript
复制
OutputDebugStringW(CStringW(l_strArgs));
票数 6
EN

Stack Overflow用户

发布于 2013-05-17 22:32:10

我刚找到这个

代码语言:javascript
复制
BSTR l_strArgs;
LPCWSTR  sth;
CString cs(_com_util::ConvertBSTRToString(l_strArg));
sth = cs;
OutputDebugStringW(sth);
票数 2
EN

Stack Overflow用户

发布于 2013-05-17 22:30:48

当您使用像_bstr_t这样的包装器时,BSTR会变得更容易处理。这是微软关于他们http://msdn.microsoft.com/en-us/library/zthfhkd6%28v=VS.100%29.aspx的文档

正如您所期望的那样,其中一个_bstr_t构造函数接受一个BSTR参数。还有一个运算符可以返回一个常量wchar_t*,您应该能够将其转换为LPCWSTR。

希望这能有所帮助

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16611416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档