我看到如何使用MFC执行此操作,但是仅使用win32库将LPSTR转换为CTR的最佳方法是什么。
答案 0 :(得分:3)
#include <comutil.h>
LPSTR myLpstr = "Hello World!";
_bstr_t bstr = _bstr_T(myLpstr);
它还需要库comsupp.lib
答案 1 :(得分:2)
请注意,SysAllocString采用OLECHAR*
参数,实际上是WCHAR*
,而不是CHAR*
。这不应该是一个问题,除非你在没有定义UNICODE
的情况下进行编译 - 但是不要这样做。
答案 2 :(得分:1)
不知道具体的解决方案,但我认为这会对你有帮助(特别是第二部分):
The Complete Guide to C++ Strings, Part I - Win32 Character Encodings
The Complete Guide to C++ Strings, Part II - String Wrapper Classes