2012-03-26 36 views
0

試圖在VC++ 2010中編譯這個舊的VC++ 6.0程序。這個ATL/WTL的東西給了我很多問題。我下載並鏈接到最新的WTL(據我所知)wtl71。沒有辦法解決這個問題而不修改微軟頭文件?

我得到的atlmisc.h編譯錯誤:

atlmisc.h(1159):錯誤C2440: '迴歸':無法從 '爲const char *' 到 'TCHAR *'

我轉換'已經搜索了'網絡,並且出現的答案要求修改股票MS atlmisc.h文件!

我在這裏錯過了什麼嗎?我需要做些什麼才能編譯?

+1

這是一套複雜的15年之久的代碼,一個新的編譯器,以及庫或是舊版本或新版本。也許你最好使用最新的編譯器,最新的ATL(包含在Studio中),最新的WTL從他們的網站,以及更新和修改所需的代碼,使其工作。 – 2012-03-27 08:41:29

回答

0

大部分時間我看到這個錯誤,這是因爲我一直在試圖構建一個Unicode應用程序。在Unicode應用程序中,TCHAR *是short *或wchar_t *而不是char *。

我建議檢查您的項目設置,並確保在項目屬性中,常規>字符集設置爲使用多字節字符集。

相關問題