一般搜索這個問題,第一項即是MSDN社區的回答:點擊打開鏈接
此處解決方法很簡單,就是將程序中的AfxMessageBox函數全部替換成爲MessageBox函數,因爲前者調用的是MFC的底層函數庫,後者調用的是最爲基本的Win32 API。故絕對不會出現“找不到標識符”的錯誤。
問題雖然可以解決,但是卻十分麻煩。而且,相信很多人跟筆者的疑惑是一樣的:我明明就是要運行MFC程序,爲什麼會不支持MFC的底層函數庫?
於是,筆者繼續尋找有沒有其他的解決方法,例如網上常說的在頭文件裏面加入#include<afxwin.h>或者#include<stdafx.h>(其實兩者是一樣的,因爲stdafx.h也調用了afxwin.h,而afxwin.h裏面標識了函數AfxMessageBox),還是沒有成功。
同樣,我也想過把程序就當做是WIN32程序,再進行手工轉換成MFC程序。於是又搜索了這樣那樣的辦法……結果也都是一樣的,還是不成功。
最後,我想不行我自己編寫一個AfxMessageBox函數總行了吧!不然每次都要改來改去實在太麻煩了。然後我打開了AfxMessageBox函數所在的頭文件afxwin.h,使用VS平臺進行搜索,於是我就看到了這個……
不知道爲啥AfxMessageBox函數竟然被註釋掉了,算是徹底無語了……於是就把這四行恢復,再運行,OK,搞定!
轉載自 http://www.xuebuyuan.com/1578921.html