无法将参数2从'const char [14]'转换为'LPCWSTR'

时间:2013-03-23 22:36:36

标签: c visual-studio-2012 lpcwstr

我收到此错误:

cannot convert parameter 2 from 'const char [14]' to 'LPCWSTR'

使用以下代码。它应该是C,但最好是visual studio 2012提供一个空的c ++项目:

#include "windows.h"

int WINAPI WinMain (HINSTANCE hinst, HINSTANCE hprevinst, LPSTR cmdline, int showcmd)
{
    MessageBox(NULL, "Merhaba Dunya", "Merhaba", MB_OK);
    return 0;
}

什么是错误的?

3 个答案:

答案 0 :(得分:4)

似乎您的当前设置已设置为WinAPI函数需要宽字符串:

MessageBox(NULL, L"Merhaba Dunya", L"Merhaba", MB_OK);

答案 1 :(得分:3)

右键单击您的项目,转到配置属性下的属性 - >常规和更改字符集使用多字节字符集。

答案 2 :(得分:1)

以下步骤对我有用:

  1. 右键单击解决方案窗口中的项目,然后选择属性菜单项。
  2. 单击“属性页”中“配置属性”下的“常规”
  3. 在“字符集”设置中:将“使用Unicode字符集”更改为“使用多字节字符集”,然后单击“确定”按钮
  4. 重建项目以了解其工作原理