- 注册时间
 - 2021-4-16
 
- 最后登录
 - 2024-9-9
 
- 在线时间
 - 2 小时
 
 
 
 
 
编程入门 
  
	- 龙马币
 - 234 
 
 
 
 
 | 
 
 
BSTR实际上就是一个COM字符串,标准BSTR是一个有长度前缀和null结束符的OLECHAR数组。BSTR的前4字节是一个表示字符串长度的前缀。BSTR长度域的值是字符串的字节数,并且不包括0结束符 
 
#include<comutil.h> 
#include <string> 
#pragmacomment(lib,"comsuppw.lib") 
 
//BSTR转string 
BSTR bstrText = ::SysAllocString(L"Test"); 
string str = _com_util::ConvertBSTRToString(bstrText); 
SysFreeString(bstrText); 
 
//BSTR转char* 
BSTR bstrText = ::SysAllocString(L"Test"); 
char* lpszText = _com_util::ConvertBSTRToString(bstrText); 
SysFreeString(bstrText); 
delete[] lpszText; 
 
//char*转BSTR 
char* lpszText = "Test"; 
BSTR bstrText = _com_util::ConvertStringToBSTR(lpszText); 
 
//string转BSTR 
string str = "Test"; 
BSTR bstrText = _com_util::ConvertStringToBSTR(str); 
 |   
 
 
 
 |