在vc6開發(fā)界面中,打開文件,然后選擇C:\Program Files\Microsoft Visual Studio\VC98\MFC\SRC\MFC.bsc(具體目錄還要根據(jù)自己VC的安裝路徑)。
打開文件以后,選擇TOOLS ->Source Browser 然后在identifier中輸入你想要查看的類,變量,宏或函數(shù)名,然后在select query 中選擇你要查詢的相關內(nèi)容即可。
如果你的VC6安裝目錄下沒有MFC.bsc那你可以使用如下命令來進行對MFC.bsc文件的重建。
首先進入DOS命令模式:
C:\Program Files\Microsoft Visual Studio\VC98\bin目錄下運行VCVARS32.BAT,然后再進入C:\Program Files\Microsoft Visual Studio\VC98\MFC\SRC\ 運行如下命令:
nmake browseonly=1 no_pch=1 no_pdb=1 dll=2
好了,現(xiàn)在可以簡單介紹介紹了
學習mfc到一定程度,必然要查看一下它的源代碼??墒墙M成mfc源代碼的文件太多又太長,如何快速方便地找到我們要看的東西?初次學習VC的朋友或許不知道在你的vc++6.0安裝目錄的某個角落里有這么一個文件:mfc.bsc。這可是學習掌握vc和mfc的好幫手。靠它可以找出vc和mfc中某個類的聲明和成員函數(shù)的定義,可以找到vc中每一個預定義名和宏的定義,找出一個文件里都聲明了什么類,類中有些什么成員,還可以找出mfc中各個類的各個成員函數(shù)誰調用了誰。打開你的vc++6.0,先隨便打開一個project,然后選菜單File/Open,在“文件類型”一欄里選Browse Info File(.bsc),然后進入“你的vc++6.0的安裝目錄vc98mfcsrc”里,選中文件mfc.bsc,按“打開”。然后在主菜單里選Tool/Source Browser,會彈出一個對話框,里面包含兩個窗口。第一個窗口是Identifier,你可以在這里輸入函數(shù)名、類名、預定義名、宏名、文件名。
如果你在第一個窗口里輸入了函數(shù)名,類名,預定義名,宏名,那么你在第二個窗口里可以選第一項:Definitions and References。然后按OK,就可以查看函數(shù),類,預定義名和宏的定義以及在何處被引用。
如果你在第一個窗口里輸入了文件名,那么你在第二個窗口里可以選擇第二項:File Outline,按OK后可以查看該文件里聲明了什么類,什么函數(shù),等等。
如果你在第一個窗口里輸入了一個類名,那么在第二個窗口里你可以選擇第三項和第四項:Base Classes and Members和Derived Classes and Members。按OK后分別可以查看該類的基類及其成員和該類的派生類及其成員。
如果你在第一個窗口里輸入了一個函數(shù)名,那么你在第二個窗口里可以選擇最后兩項:Call Graph和Caller Graph,按OK后分別可以查看該函數(shù)調用了誰和被誰調用。
還有一個小技巧:當最后的結果顯示出來后,你在結果中的函數(shù)名、類名、預定義名、宏名上雙擊鼠標左鍵,那么包含這些名字的定義或實現(xiàn)的文件就被打開了。
==================================================================================
==================================================================================
查看MFC的源代碼
MFC的全部源代碼都是公開的,看看MFC的源代碼對windows編程是很有幫助的
如何查看MFC的源代碼呢
MFC源代碼的存放路徑在哪里呢
如何你在安裝的時候選擇了安裝源代碼,那么在VC的安裝目錄下就可以找到MFC的源代碼
我的VC6和vc7都是安裝在E盤的,
VC6的MFC源代碼路徑
E:\Program Files\Microsoft Visual Studio\VC98\MFC\SRC
VC7的
MFC源代碼
E:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\src\mfc
ATL的源代碼
E:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\src\atl
侯捷說,如果你不看Mfc的源代碼,那么,恭喜你,你是一個快樂的程序員
本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請
點擊舉報。