CString转LPCOLESTR的方法如下:

  1. 首先将CString转换为标准的C字符串。

CString str = "Hello World!"; const char* psz = str.GetBuffer();

  1. 然后使用MultiByteToWideChar函数将C字符串转换为Unicode字符串。

int nLen = MultiByteToWideChar(CP_ACP, 0, psz, -1, NULL, 0); wchar_t* pwsz = new wchar_t[nLen]; MultiByteToWideChar(CP_ACP, 0, psz, -1, pwsz, nLen);

  1. 最后将Unicode字符串转换为LPCOLESTR类型。

LPCOLESTR lpstr = (LPCOLESTR)pwsz;

  1. 使用完毕后,记得释放内存。

delete[] pwsz;

完整代码如下:

CString str = "Hello World!"; const char* psz = str.GetBuffer();

int nLen = MultiByteToWideChar(CP_ACP, 0, psz, -1, NULL, 0); wchar_t* pwsz = new wchar_t[nLen]; MultiByteToWideChar(CP_ACP, 0, psz, -1, pwsz, nLen);

LPCOLESTR lpstr = (LPCOLESTR)pwsz;

delete[] pwsz

CString 转LPCOLESTR

原文地址: http://www.cveoy.top/t/topic/cifl 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录