查看文章 |
Visual C++ 中的常用文件扩展名
2007-04-19 12:29
概要Visual C++ 在生成过程中编写并使用许多的文件。 本文讲述 Visual C++ 项目中常用的文件扩展名。更多信息Visual C++ 中使用的文件.C -- C 语言源文件: 这种文件是作为 C 文件编译的。 如果其中包含 C++ 代码,必须将文件扩展名重命名为 .CPP 或 .CXX 文件,或在编译文件时使用 /Tp 命令开关。 如果资源文件包含 C++ 代码,Microsoft 建议将文件扩展名重命名为 .CPP 或 .CXX 扩展名。 .CPP 或 .CXX -- C++ 语言源文件: 这种文件是作为 C++ 文件编译的。 如果要作为 C 文件编译它(假设源文件中没有 C++ 代码),必须将这种文件重命名为 .C 文件(推荐使用),或在编译该文件时使用 /Tc 命令开关。 .H、.HPP、或 .HXX -- 头文件: 头文件常用于函数原型、类定义或常量定义。 .H、.HPP、或 .HXX 文件可以包含在多个源文件中。 .INL -- 内嵌函数文件: 这种文件包含内嵌函数定义。 .RC 或 .RC2 -- 资源文件: 这种文件包含有项目的资源信息,如对话框、菜单栏或字符串表的说明。 这种文件是用资源编译器 (RC.EXE) 编译的。 使用 Visual C++ 的 AppWizard 生成 MFC (Microsoft Foundation Classes) 应用程序时,将得到应用程序的 .RC 文件。 .RC 文件可以使用资源编辑器或 App Studio 进行修改或创建。 在某些 Visual C++ 版本中,您会发现 .RC2 文件也包含资源信息。 .DEF – 模块定义文件: 根据项目类型,这种文件有两种用途。 在基于 Windows 和 Windows NT 的程序中,这种文件用于指定导出的函数列表、控制程序堆栈大小、指定特殊段的属性等等。 对于基于 MS-DOS 的 MOVE 重叠程序(仅 16 位产品才有),这种文件用于指定段或函数所在的重叠程序。 由 Visual C++ 创建的文件.APS – 二进制资源文件: 这种文件是二进制的当前资源文件。 App Studio 或资源编辑器使用该文件进行快速加载。 .BSC – 浏览器数据库文件: 为每个项目创建一个 .BSC 文件。 要使用浏览器,需要在 Visual C++ Workbench 中打开该文件。 这种文件是在运行 BSCMAKE 工具时通过 .SBR 文件创建的。 .CLW -- 类向导状态文件: 这种文件保存消息处理函数在代码中存储位置的信息。 这种文本文件的格式没有成文规定,但是可以重新生成这种文件。 有关如何重新生成这种文件的详细信息,请在 App Studio 中单击 Help 菜单上的 Contents 项,然后单击“Using Class Wizard” 和“Update Class Wizard when Code Changes”。 .EXE 或 .DLL -- 可执行文件或动态链接库文件: 这种文件是用于项目的最终链接输出文件。 其中包含可执行代码。 .ILK (仅 2.0 版或更高版本才有)-- 递增链接信息文件: 链接器创建这种文件允许在可能时执行递增链接。 如果删除这种文件,链接器必须执行全链接。 .OBJ – 对象模块文件: 这是编译器中最终的输出文件。 链接器将这些文件组合在一起以创建最终的 .EXE、.DLL 或 .LIB 文件。 .OBJ 文件在不同版的 Visual C++ 中或不同供应商的编译器中有不同的格式。 .PCH – 预编译头文件: 这些文件可以大大提高编译速度。 它们是在使用 /Yc、/Yu 或 /YX 编译器选项时创建的。 .PDB – 程序数据文件: 这种二进制文件中包含编译和链接项目时所收集的类型和符号调试信息。 这种文件用于 Visual C++ 调试器。 对象文件包含 .PDB 文件中有关调试信息的一些参考。 这种设计减小了对象文件的大小。 有关其它信息,请参见 /Zi 命令开关下的联机参考。 使用 /Z7 命令开关时,并不创建这种文件。 .SBR – 资源浏览器文件: 可以为每个使用 /FR 或 /Fr 命令开关编译的资源文件创建这种文件。 这种文件中包含 Microsoft Browser Database Maintenance Utility (BSCMAKE)(Microsoft 浏览器数据库维护实用工具)创建浏览数据库文件(BSC 文件)时所使用的符号信息。 .WSP -- 工作空间信息文件(仅 16 位版本才有): 这种文件是二进制文件,其中包含 WorkBench 关闭时的状态信息。 如打开的资源文件以及其窗口位置这些项均保存在这种文件中。 .VCP -- 工作空间信息文件(仅 Visual C++ 2.x 以及更高版本才有): 这种文件是与 16 位版本的 .WSP 文件相对等的 Visual C++ 2.x 版文件。 .VCW -- Visual WorkBench 状态文件(仅 16 位版本才有): 这种文件是基于每个项目创建的。 它使用 .MAK 文件向 WorkBench 全面描述项目。 .EXP -- 导出文件: 导出文件包含有关导出函数和数据项的信息。 LIB 创建导入库时,它也创建导出文件。 当链接从另一个程序中导出或导入的程序时,可以直接或间接使用 .EXP 文件。 如果使用 .EXP 文件进行链接,LINK 不会生成导入库,这是因为它假设 LIB 已经创建一个导入库。 .LIB -- 库文件: 这些文件可以是标准库或导入库文件。 标准库包含对象,而且是由 LIB 工具创建的。 导入库包含其他程序中的导出信息,它要么是在生成包含导出信息的程序时由 LINK 创建,要么由 LIB 工具创建。 .MAP -- 映射文件: 映射文件是包含被链接程序信息的文本文件。 所含信息包括模块名、来自程序文件(而不是文件系统)头文件的时间戳以及程序中的组列表(其中包含每组的起始地址、长度、组名和类)。此外,还包括公共符号列表及其各自的地址、符号名、完全地址和定义符号的对象文件。 映射文件也包含程序的输入点以及修正列表。 .RES – 已编译的资源文件: .RES 文件是由资源编译器 (RC) 创建的。 .HPJ – 上下文相关帮助项目文件: 使用 Visual C++ AppWizard 创建支持上下文相关帮助的 MFC 应用程序时,将产生这种文件。 需要使用 .HPJ 文件,通过使用 AppWizard 生成的 .RTF 文件和 .BMP 文件创建帮助文件。 NCB – 分析器信息文件: 这种文件包含分析器生成的信息,分析器用于类视图和组件库。 如果这种文件被有意或无意删除,它会自动重新生成。 MDP -- Microsoft Developer studio 项目文件: 这种文件替代 Visual C++ 版本 2.x 的 .VCP 文件。 .MDP 文件包含的项目信息比 .VCP 文件包含的信息要多。 RCT -- 资源模板文件: 这些文件包含插入资源时可用的自定义资源的信息。 它可以包括菜单、工具栏、位图以及任何其它在 Insert Resource 菜单中列出的资源类型。 在生成过程中创建而后又删除的其它文件在生成过程中,还有两种其它文件由 Visual C++ IDE 创建。 正常环境中,应当删除这些文件。 这些文件是: .CRF -- 链接器响应文件: 该文件是在生成过程中随时创建的。 MSVC.BND -- 项目 .CRF 文件的副本: 该文件是在资源需要绑定到可执行文件时创建的。它只是项目的 .CRF 文件的副本。 根据项目所支持的功能,还创建一些其它文件。 例如,项目可能有一个或多个带 .ICO 扩展名的图标文件、带 .CUR 扩展名的光标文件或带 .BMP 扩展名的位图文件。 项目也可能有包含项目注册表信息的 .REG 文件。 支持 OLE 的项目也可能有 .ODL 文件和 .TLB 文件。 参考有关本文没有列出的文件类型的详细信息,请参阅产品文档的以下部分: Visual C++ 2.x Books On-line、User's Guides、Visual C++ User's Guide 的 Appendices, Link Input Files 和 Link Output Files。 |
最近读者:

