我有一个从 .Net 应用程序开始的字符串,它被加密并存储在 AD 中。然后由 native C++ 应用程序获取并解密以生成字节数组 例如,“ABCDEF”在 C++ 端解密后变为 00,41,00,42,00,43,00,44,00,45。
我需要获取此字节数组并将其转换为 BSTR“ABCDEF”,以便我可以在其他地方使用它,但我找不到完成这最后一步的方法。
有人可以帮忙吗?
最佳答案
如果你真的有一个任意字节的数组,使用SysAllocStringByteLen
.但看起来,尽管在字节数组中,您的数据实际上是一个 UTF-16 编码的 Unicode 字符串,所以在这种情况下,您最好使用 SysAllocStringLen
反而。将字节数组指针传递给函数(类型转换为 OLECHAR*
),字符将被复制到新字符串中,并在末尾附加一个空字符。
关于c++ - MS VC++ 将字节数组转换为 BSTR?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1464743/