【超难】BSTR传输包含NULL字符串的有关问题
【超难】BSTR传输包含NULL字符串的问题我现在有一个数据包,这个数据包包含NULL字符串,即\0,绝对0,一般C++程
【超难】BSTR传输包含NULL字符串的问题
我现在有一个数据包,这个数据包包含NULL字符串,即\0,绝对0,一般C++程序认为这个是字符串结束标志,但是这个报文中间是包含这个字符的,就是说NULL后面还有内容的,我知道这个数据包的长度,如下:
加上
char a[5]={0x02,0x03,0x00,0x04};
BSTR b;
如何将a赋值给b?BSTR并不是以绝对0为结尾的,书上说,bstr在开头有个位置记录BSTR字符串的长度!
找了好久找不到答案,郁闷!!!!请求高手帮忙
[解决办法]
SysAllocStringLen
就可以了
[解决办法]
BSTR就是wchar_t*,哪来的记录长度的地方。
BSTR b=::SysAllocStringByteLenA(a,5);
[解决办法]
有0就是二进制数据了,自己用BYTE数据来保存和修改,并且定义一个变量保存长度
[解决办法]
[解决办法][解决办法][解决办法]