C1189 Winver 0x501 fatal error C1189: #error: MFC does not support WINVER less than 0x0501.
方式一&方式二
注釋掉后,vs會自動從WinSDKVer.h頭文件獲取
_WIN32_WINNT not defined. Defaulting to _WIN32_WINNT_MAXVER (see WinSDKVer.h)
C1189 RTCc fatal error C1189: #error: /RTCc rejects conformant code
方式一
增加預處理定義 _ALLOW_RTCc_IN_STL
方式二
define _ALLOW_RTCc_IN_STL
方式三
修改代碼生成中的較小類型檢查/RTCc 為否
C2220 警告被視為錯誤 error C2220: 警告被視為錯誤 - 沒有生成“object”文件
方式一
修改警告的錯誤,保證不出現這個警告 ,例如這個int類型改為UINT類型
方式二
修改屬性頁,修改c/c++->常規->警告視為錯誤 改為否
方式三
禁用出現的這個警告編號 (disable:4838),這樣就不會出現警告提示
LNK2001 無法解析的外部符號"void *_cdecl acHeapAlloc(void *,unsigned _int64)" (?acHeapAlloc@@YAPEAXPEAX_K@Z)
解答 by gzxl 缺少庫
#if _MSC_VER >= 1920 // ObjectARXSDK 2021以上
#pragma comment(lib, "AcPal.lib")
#pragma comment(lib, "acgeoment.lib")
#endif
LNK111 模塊計算機類型"x64"與目標計算機類型“X86"沖突 或 模塊計算機類型"X86"與目標計算機類型“x64"沖突
解答
“模塊計算機類型”一般指的是調用已經編譯好的lib庫文件的是x64, 而 “目標計算機類型“X86” 是指的當前編譯設置的編譯平台是win32(x86),當引用的lib文件和當前平台不匹配的時候,
就會提示這個問題。設置好正確的lib即可。在arx中一般是庫目錄的問題,確保庫目錄正確。