3

このエラーが発生しています:

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;
}

何が間違っていますか?

4

3 に答える 3

4

プロジェクトを右クリックし、構成プロパティ -> 一般の下のプロパティに移動し、文字セットを [マルチバイト文字セットを使用] に変更します。

于 2015-02-01T15:06:13.730 に答える
4

現在の設定は、WinAPI 関数がワイド文字列を想定するように設定されているようです。

MessageBox(NULL, L"Merhaba Dunya", L"Merhaba", MB_OK);
于 2013-03-23T22:38:17.857 に答える
1

以下の手順が私のために働いた:

  1. ソリューション ウィンドウでプロジェクトを右クリックし、[プロパティ] メニュー項目を選択します。
  2. プロパティ ページの [構成プロパティ] の下にある [全般] をクリックします。
  3. 「文字セット」設定で、「Unicode 文字セットを使用する」を「マルチバイト文字セットを使用する」に変更し、[OK] ボタンをクリックします。
  4. プロジェクトを再構築して、どのように機能するかを確認します
于 2016-09-23T16:24:15.220 に答える