读书人

COM中的BSTR遇到的字符转化有关问题

发布时间: 2012-05-15 14:35:29 作者: rapoo

COM中的BSTR遇到的字符转化问题
我现在做com的时候碰到点麻烦。
我的接口要使用BSTR传出一个8字节的随机数。
而每个字节的范围是0~255。
所以当我产生8个字节的随机数并转化为宽字符的时候
使用MultiByteToWideChar转化的宽字符经常转化不全
我估计是数字超出128所致。
同理,我的BSTR也会传出一个转化不全的随机数。
请问这样的情况我该怎么解决?

[解决办法]
BSTR和CSring是可以相互转换的,一个8字节的随机数你可以做为一个CString,每一个都是0-9的数字怎么为超过128呢。
[解决办法]
字符串那些事儿:BSTR-LPSTR-LPWSTR-CString-VARIANT-COleVariant-_variant_t-CComBSTR-_bstr_t
http://blog.csdn.net/pizi0475/archive/2010/03/04/5346708.aspx

[解决办法]
实在不行,就把1Byte数值拆解为2Byte,这样就绝对<128
[解决办法]
先把这个八个随机数转换成字符串。

读书人网 >C++

热点推荐