2016-05-13 792 views
6

我得到以下錯誤,而使用此命令qmake.exe project.pro -r -spec win32-msvc2015錯誤C2440:「默認參數」:不能從「常量爲wchar_t [1]」到「BSTR」

C:\Program Files (x86)\Windows Kits\8.1\include\um\mshtml.h(50130): error C2440: 'default argument': cannot convert from 'const wchar_t [1]' to 'BSTR' 

它能正常工作與qmake.exe project.pro -r -spec win32-msvc2013

轉換

意思是它用win32-msvc2013構建,但不是win32-msvc2015。我添加下面一行在項目文件之後,它我是能夠建立在2013年而不是2015年

win32: QMAKE_CXXFLAGS_RELEASE -= -Zc:strictStrings 

任何一個有關於這一點,知道這是什麼需要爲2015年?

回答

11

這是因爲有些Windows標頭違反了strictStrings規則。你可以嘗試更多的鬆動檢查:

win32: QMAKE_CXXFLAGS_RELEASE -= -Zc:strictStrings 
win32: QMAKE_CFLAGS_RELEASE -= -Zc:strictStrings 
win32: QMAKE_CFLAGS -= -Zc:strictStrings 
win32: QMAKE_CXXFLAGS -= -Zc:strictStrings 
+1

它的工作,謝謝。 –

+0

Upvoted答案也是如此。 –

+1

我正面臨同樣的問題。這解決了我的問題。謝謝@talamaki! – code82