1.檢測程序中的括號是否匹配
把光標移動到需要檢測的括號(如大括號{}、方括號[]、圓括號()和尖括號<>)前面,鍵入快捷鍵“Ctrl+]”。如果括號匹配正確,光標就跳到匹配的括號處,否則光標不移動,並且機箱喇叭還會發出一聲警告聲。
[注:當一個函數體的內容過長時,全部選中,可以把光標移動到函數體的{處,按下Ctrl+},即可全部選中]
2.查看一個宏(或變量、函數)的宏定義
把光標移動到你想知道的一個宏上,就比如說最常見的DECLARE_MAP_MESSAGE上按一下F12(或右鍵菜單中的Go To Defition Of…),如果沒有建立Browse files,會出現提示對話框,確定,然後就會跳到定義那些東西的地方。
[注:這個功能還是比較常用的,不過感覺熱鍵並不如鼠標選擇的快]
3.格式化一段亂七八糟的源代碼
選中那段源代碼,按ATL+F8。
[注:選中一段代碼,按下Tab,或shift+Tab,右(或左)移一個TAb]
4.在編輯狀態下發現成員變量或函數不能顯示
刪除該項目擴展名為.ncb文件,重新打開該項目。
[注:我上次說的不是很准確,.opt裡面可能存有你在ClassvIEw新建的文件夾信息,刪除的話那些分類文件夾信息也一並刪除了]
5.如何整理ClassVIEw視圖中大量的類
可以在classvIEw 視圖中右鍵新建文件夾(new folder),再把具有相近性質的類拖到對應的文件夾中,使整個視圖看上去清晰明了。
[注:事實上,我也見到在FileView裡用文件夾分類的,我的感覺是:可能是為了避免在ClassvIEws裡出現如上述的部分函數丟失的情況吧,畢竟VC6有時並不是很穩定,當然這兩種方法各有利弊的,我目前一般是傾向於前者的]
6.定位預處理指定
在源文件中定位光標到對稱的#if, #endif,使用Ctrl+K。
7.如何添加系統中Lib到當前項目
在Project ¦ Settings ¦ Link ¦ Object/library modules:輸入Lib名稱,不同的Lib之間用空格格開。
[注:或者這樣,#pragma comment(lib,"yourlib.lib")]
8.如何添加系統中的頭文件(.h)到當前項目。
#include <FileName.h>,告訴編譯到VC系統目錄去找;使用#include "FileName.h",告訴編譯在當前目錄找。
9.如何在Studio使用匯編調試
在WorkBench的Debugger狀態下按CTRL+F7。
10.怎樣處理ClassWiZard找不到的系統消息
如果要在ClassWizard中處理WM_NCHITTEST等系統消息,請在ClassWizard中Class Info頁中將Message filter改為Window就有了。
[注:主要是classwizard默認的是toponthemost]
11.如何干淨的刪除一個類
先從Workspace中的FileVIEw中刪除對應的.h和.cpp文件,再關閉項目,從實際的文件夾中刪除對應的.h和.cpp文件與.clw文件。
12.如果讓控制台應用程序支持mfc類庫
可以在控制台應用程序中include 來引入mfc庫,但是控制台應用程序缺省是單線程的,mfc是多線程的,為解決該矛盾,在project setting->c/c++ 選項,選擇code generation,在use run-time library 下拉框中選擇debug multithread。
13.如何漢化只有可執行代碼的.exe 文件
在nt下利用vc open file 以resources方式打開*.exe 文件,直接修改資源文件,然後保存即可。
[注:我一般是用exescope編輯的]
附:VC項目文件說明
.opt 工程關於開發環境的參數文件。如工具條位置等信息;
.aps (APPStudio File),資源輔助文件,二進制格式,一般不用去管他;
.clw ClassWizard信息文件,實際上是INI文件的格式,有興趣可以研究一下.有時候ClassWizard出問題,手工修改CLW文件可以解決.如果此文件不存在的話,每次用ClassWizard的時候繪提示你是否重建;
.dsp (DeveloperStudio Project):項目文件,文本格式,不過不熟悉的話不要手工修改.dsw(DeveloperStudio Workspace)是工作區文件,其他特點和DSP差不多;
.plg 是編譯信息文件,編譯時的error和warning信息文件(實際上是一個Html文件),一般用處不大.在Tools->Options裡面有個選項可以控制這個文件的生成;
.hpj (Help Project)是生成幫助文件的工程,用microsfot Help Compiler可以處理;
.mdp (Microsoft DevStudio Project)是舊版本的項目文件,如果要打開此文件的話,會提示你是否轉換成新的DSP格式;
.bsc 是用於浏覽項目信息的,如果用Source Brower的話就必須有這個文件.如果不用這個功能的話,可以在Project Options裡面去掉Generate Browse Info File,可以加快編譯速度;
.map 是執行文件的映像信息紀錄文件,除非對系統底層非常熟悉,這個文件一般用不著;
.pch (Pre-Compiled File)是預編譯文件,可以加快編譯速度,但是文件非常大;
.pdb (Program Database)記錄了程序有關的一些數據和調試信息,在調試的時候可能有用;
.exp 只有在編譯DLL的時候才會生成,記錄了DLL文件中的一些信息.一般也沒什麼用;
.ncb 無編譯浏覽文件(no compile browser)。當自動完成功能出問題時可以刪除此文件。build後會自動生成。