将宽字符串文字与字符串宏组合在一起

我有一个字符串宏,如下所示:

#define APPNAME "MyApp" 

现在我想通过执行以下操作来构造一个使用此宏的宽字符串:

 const wchar_t *AppProgID = APPNAME L".Document"; 

但是,这会生成“连接不匹配的字符串”编译错误。

有没有办法将APPNAME宏转换为宽字符串文字?

你试过了吗

 #define APPNAME "MyApp" #define WIDEN2(x) L ## x #define WIDEN(x) WIDEN2(x) const wchar_t *AppProgID = WIDEN(APPNAME) L".Document";