现在的位置: 首页 > 综合 > 正文

VC++6.0下使用的一些技巧

2018年07月30日 ⁄ 综合 ⁄ 共 3780字 ⁄ 字号 评论关闭

 

1.检测程序中的括号是否匹配把光移动到需要检测的括号(如大括号{}、方括号[]、圆括号()和尖括号<>)前面,键入快捷键“Ctrl+]”。如果括号匹配正确,光就跳到匹配的括号处,否则光不移动,并且机箱喇叭还会发出一声警告声。

2.查看一个宏(或变量、函数)的宏定义把光移动到想知道的一个宏上,就比如说最常见的DECLARE_MAP_MESSAGE上按一下F12(或右键菜单中的Go To Defition Of …),如果没有建立Browse files,会出现提示对话框,确定,然后就会跳到定义那些东西的地方。

3. 式化一段乱七八糟的源代选中那段源代,按ATL+F8。

4.在编辑状态下发现成员变量或函数不能显示除该项目扩展名为.ncb文件,重新打开该项目。

 5.如何整理ClassView视图中大量的类可以在classview 视图中右键新建文件夹(new folder),再把具有相近性质的类拖到对应的文件夹中,使整个视图看上去清晰明了.

6.定位预处理指定 在源文件中定位光到对称的#if, #endif,使用Ctrl+K.

7.如何添 系统中Lib到当前项目 在Project | Settings | Link | Object/library modules:输入Lib名称,不同的Lib之间用空 开.

8.如何添 系统中的头文件(.h)到当前项目. #include ,告诉编译到VC系统目录去找;使用#include "FileName.h",告诉编译在当 前目录找.

9.如何在Studio使用汇编调试在WorkBench的Debugger状态下按CTRL+F7.

10.怎处理ClassZiard找不到的系统消息如果要在ClassWizard中处理WM_NCHITTEST等系统消息,请在ClassWizard中Class Info页中将 Message filter改为Window就有了.

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 文件,直接修改资源文件,然后保存即可。

 

[ 问题一]:解决workspace中的classview显示混乱 [解答] 即添的成员变量或函数不能显示;即使显示出来了变量或函数,双击后不能跳至正确的位置。除.ncb文件,再rebuild all,即可。

 

 [问题二]:向项目中入自己定义的类的简单方法 [解答] 选择Insert/New Class菜单,弹出对话框,选择Class Type为generic,输入类名。当然,也可以自己决定该类的基类。
[问题三]:在工作区(Workspace)导入多个项目(Project) [解答] 在打开一个项目(*.dsp文件)后,在“Project” 菜单选择“Insert Project into Workspace” 子菜单,然后选择另一个项目文件(*.dsp文件),可插入另一个项目。在ClassView 视图中,右键可以激活其中某个项目,工作区插入多个项目能方便不同项目间拷贝代、资源等。

[问题四]:整理在ClassView 视图中太多的类 [解答] 我们可以在ClassView 视图中右键新建文件夹(New Folder),再把具有相近性质的类拖到对应的文件夹中,使整个视图看上去清晰明了。

[问题五]:快速 除项目下Debug 文件夹中临时文件 [解答] 在FileView视图中选中对应项目,右键Clean即可。

[问题六]:快速打开一个源文件较大的项目 [解答] 不要打开项目文件(*.dsp文件),直接打开要编辑的单个源文件(*.h或*.cpp)进行编辑,要快得多。

[问题七]:快速生成一个与现有项目除了项目名外完全相同的新项目 [解答] 利用File菜单下生成新项目中的Custom AppWizard ,选择 An existing Project ,然后选择现有项目的项目文件名(*.dsp)Finish,编译后就生成一个可以生成与现有项目相同但可以重新取名的项目的AppWizard。可以象用MFC AppWizard一用它。如果不想用了,可以在VC 安装目录下Common/MSDev98/Template目录中除该Wizard中.awx和 .pdb文件。

[问题八]:在VC中设置头文件和库文件 [解答] 除了VC缺省头文件和库文件外,如果经常要用到第三方的头文件和库文件可以在Tools Options 的Directories中设置。如果只是本项目要用到,可以在Project Setting->Link Object/library Modules中设置库文件。

[问题九]:让控制台应用程序支持MFC类库 [解答] 可以在控制台应用程序中include 来引入MFC库,但是控制台应用程序缺省是单线程的,MFC是多线程的,为解决该矛盾,在Project Setting->C/C++ 选项,选择Code Generation,在Use Run-Time Library 下拉框中选择Debug Multithread。

[问题十]:数据库表修改后,快速更新一个绑定到表的CRecordSet记录集 [解答] 利用ClassWizard 中 Member Variables 签下选中记录集类后,利用UpdateColoumns和Bind All。

[问题十一]:汉化只有可执行代 的.exe 文件 [解答] 在VC Open File 中以Resources方式打开*.exe 文件,直接修改资源文件,然后保存即可。

[问题十二]:如何干净 除一个类 [解答] 在用VC编程时,如何彻底除一个类呢?我们可以这做:首先,从workspace中的FileView中除对应的.h和.cpp文件;再关闭项目,从实际的文件夹中除对应的.h和.cpp文件;再除.clw文件。此后,打开项目,rebuild all。  这,我们就彻底地 除了一个对我们用的类。

 

[问题十三]:如何解决VC不正确连接问题 [解答] 使用VC开发项目时,常会遇到这种情况:明明只改动了一个文件,却要把整个项目全部重新编译连接一次。刚刚连接好,一运行,又提示重新编译连接一次,非常讨厌。这是为出现了未来文件的缘故。我们可以这对付它:找出对应文件夹下的debug目录,将创建和修改时间都比系统时间晚的文件全部delete, 再rebuild all一次。一切就会OK了。

 

[问题十四]:在MSVC++6中,有时通过Class Wizard添成员变量时,有的会从Class View中消失,通常这种情况发生在应用程序的对话框类中,解决办法如下: [解答] 先保存workspace,然后关闭工程,除此工程目录中的.ncb文件,然后重新打开workspace即可。

 

附: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后会自动生成。

抱歉!评论已关闭.