CWnd::MessageBoxW”: 不能將參數 1 從“const char [16]”轉換爲“LPCTSTR

轉載自http://blog.163.com/xin_qing2010/blog/static/1777373582011530102750463/


外面用vs2010編寫mfc程序的時候經常要MessageBox("提示信息")函數,在vc6.0是沒有問題的,但是在vs2005卻會有下面的提示:

error C2664: “CWnd::MessageBoxW”: 不能將參數 1 從“const char [17]”轉換爲“LPCTSTR”

這個錯誤提示的原因是VS2005默認使用的是UNICODE字符集,在參數轉換時會出錯

解決方法很簡單。

方法一:

MessageBox(_T"你已經提交成功。");

即在參數前加上_T

方法二:

在新建項目時,把使用UNICODE字符集取消,如下圖:

MFC的MessageBox出錯

方法三:

選擇“項目”-》“XXX項目屬性”-》“配置屬性”-》“常規”選項中,把“字符集”改爲“使用多字節字符集”,然後確定。如下圖:

        MFC的MessageBox出錯
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章