1. 程式人生 > >error C1189: #error : "No Target Architecture"

error C1189: #error : "No Target Architecture"

winnt.h fatal error C1189 No Target Architect

錯誤信息

 VS2013編譯程序錯誤:
17>C:\Program Files (x86)\Windows Kits\8.1\Include\um\winnt.h(145): fatal error C1189: #error : "No Target Architecture"

技術分享圖片

錯誤原因

出現該錯誤是因為包含了windows自帶頭文件:#include "fileapi.h"
雙擊錯誤信息行,頁面跳轉到windows頭文件winnt.h中,具體信息如下:
技術分享圖片

可以看到,出現錯誤信息:“No Target Architecture”是因為未定義某個宏,如AMD64

X86、_IA64_或ARM

解決方法

我選擇在項目中添加_AMD64_宏(其他三個也可以)解決該問題。
具體方法:項目名稱右鍵-->屬性-->C/C++-->預處理器-->添加宏,如下所示:
技術分享圖片

error C1189: #error : "No Target Architecture"