BSTR 值与 char *的转换

本文介绍了如何在Visual Studio中利用COM全局函数进行BSTR和char*之间的转换。通过包含<comutil.h>头文件并链接comsuppw.lib或comsuppwd.lib库,可以使用ConvertBSTRToString将BSTR转换为char*,以及使用ConvertStringToBSTR进行反向转换。这些转换方法在Windows开发中处理字符串交互时十分实用。
摘要由CSDN通过智能技术生成

将 char * 值转换为 BSTRVS提供的编译器 COM 全局函数有相关API,此处仅以记录,方便查阅。

Header: <comutil.h>

Lib: comsuppw.lib or comsuppwd.lib

将 BSTR 值转换为 char *:ConvertBSTRToString

// ConvertBSTRToString.cpp
#include <comutil.h>
#include <stdio.h>

#pragma comment(lib, "comsuppw.lib")

int main() {
   BSTR bstrText = ::SysAllocString(L"Test");
   wprintf_s(L"BSTR text: %s\n", bstrText);

   char* lpszText2 = _com_util::ConvertBSTRToString(bstrText);
   printf_s("char * text: %s\n", lpszText2);

   SysFreeString(bstrText);
   delete[] lpszText2;
}
BSTR text: Test
char * text: Test

将 char * 值转换为 BSTR :ConvertStringToBSTR

// ConvertStringToBSTR.cpp
#inc
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值