明辉站/网站教程/内容

资源文件说明:使用资源

网站教程2024-06-13 阅读
[摘要]使用资源资源可以由广范的元素组成,其中包括:向用户提供信息的界面元素(如位图、图标或光标)。包含应用程序所需数据的自定义资源。安装 API 所使用的版本资源。菜单和对话框资源。可以向项目添加新资源并使用适当的资源编辑器修改这些资源。 大多数 Visual C++ 向导自动为项目生成 .rc 文件。...
使用资源
资源可以由广范的元素组成,其中包括:
•向用户提供信息的界面元素(如位图、图标或光标)。
•包含应用程序所需数据的自定义资源。
•安装 API 所使用的版本资源。
•菜单和对话框资源。
可以向项目添加新资源并使用适当的资源编辑器修改这些资源。 大多数 Visual C++ 向导自动为项目生成 .rc 文件。
本节内容
•Resource Files
•Creating a New Resource Script (.rc) File
•Creating a New Resource
•Viewing Resources in an .rc File
•Opening a Resource Script File in Text Format
•Including Resources at Compile Time
•Specifying Include Directories for Resources
•Copying Resources
•Searching for Symbols in Resources
•Using Resource Templates (.rct)
•Importing and Exporting Resources
•Manifest Resources
•Symbols: Resource Identifiers (IDs)
•Resource Editors
•Viewing Resources in a Resource Editor
•Editing Resources in a Resource Editor
•Resource Previews
相关章节
•Resource View
•Platform SDK 的Resources一节
使用 Visual C++
•Porting and Upgrading
•Creating and Managing Visual C++ Projects
•Building Your Program
•Adding Functionality
使用 Visual Studio .NET 开发代码
•Unmanaged Development with C++
•Managed Development with Visual Basic, C#, and C++
•Visual Studio.NET
获取有关 Visual Studio .NET 的帮助
•Locating Readme Files
•Visual C++ on the Web
•Technical Support for Visual Studio.NET
•Accessibility for People with Disabilities

#资源文件
术语“资源文件”可以指若干文件类型,包括:
•程序的资源脚本 (.rc) 文件。
•资源模板 (.rct) 文件。
•作为独立文件存在的个别资源,如从 .rc 文件引用的位图、图标或光标文件。
•由开发环境生成的头文件(如 Resource.h),它从 .rc 文件中引用。
在other file types(如 .exe、.dll 和 .res 文件)中也可以找到资源。 可以从项目内使用资源和资源文件,并可使用不属于当前项目的资源和资源文件。 也可使用不是在 Visual Studio 开发环境中创建的资源文件。例如,可以:
•使用嵌套的和按条件包含的资源文件。
•更新现有资源或将其转化成 Visual C++ 格式。
•将图形资源导入当前资源文件或从当前资源文件导出。
•包含开发环境无法修改的共享或只读标识符(符号)。
•在可执行 (.exe) 文件中包含创建当前项目的过程中不需要编辑(或不希望编辑)的资源,如若干项目之间共享的资源。
•包含开发环境不支持的资源类型。
本节介绍:
•Creating a New Resource Script File
•Creating a New Resource
•Viewing Resources in a Resource Script File
•Opening a Resource Script File in Text Format
•Including Resources at Compile Time
•Copying Resources
•Using Resource Templates (.rct)
•Importing and Exporting Resources
•Editable File Types for Resources
•File Extensions for Resources
•Files Affected by Resource Editing
请参见
Resource Editors Working with Resources Platform SDK 的Resources一节

#创建新资源脚本文件
创建新资源文件
1.在Solution Explorer中突出显示现有项目。
2.在@Project@菜单上单击@Add New Item@。
3.在@Add New Item@对话框中单击@Visual C++@文件夹,然后在右窗格中选择@Resource File (.rc)@。
4.在@Name@文本框中提供资源脚本文件的名称,然后单击@Open@。
现在可以create并向 .rc 文件添加新资源。
注意 只能将资源脚本(.rc 文件)添加到载入 Visual Studio IDE 内的现有项目。 无法创建独立的 .rc 文件(项目外的文件)。 可随时创建Resource templates(.rct 文件)。
请参见
Resource Files Resource Editors

#创建新资源
在@Resource View@中创建新资源
•将焦点放在Resource View Window中,单击@Edit@菜单并选择@Add Resource@(或在@Resource@视图中右击 .rc 文件并从快捷菜单中选择@Add Resource@)。
在解决方案资源管理器中创建新资源
•在Solution Explorer窗格中,右击项目文件夹,然后在快捷菜单中单击@Add@并从展开的菜单中选择@Resource@。
在@Class View@中创建新资源
1.在Class View窗格中,右击类并从快捷菜单中选择@Add Resource@。
2.在Add Resource dialog box中选择要添加到项目的资源类型。
从@Project@菜单创建新资源
•在@Project@菜单中选择@Add Resource@。
当创建新资源时,Visual C++ 给该资源分配一个唯一的名称,如 IDD_Dialog1。 可以通过在关联的资源编辑器或在Properties Window中编辑资源属性来自定义该资源 ID。
可以创建资源作为新的默认资源(不基于模板的资源)或作为模仿template的资源。
请参见
Resource Files Resource Editors Add Resource Dialog Box

#@Resource View@窗口
@Resource@视图显示项目中包含的资源文件。 展开顶部文件夹(如 Project1.rc)将显示该 .rc 文件中的资源类型。 展开每种资源类型将显示该类型的各个资源。
提示 可以在@Resource View@窗口上右击以启动命令的快捷菜单。 也可以在标题栏上双击以停靠或取消停靠该窗口。 在标题栏上右击将提供允许控制窗口行为的其他命令。有关更多信息,请参阅Windows Management。
打开@resource view@窗口
•单击@View@菜单上的@Resource View@。
— 或 —
•按 CTRL+SHIFT+E 键。
请参见
Working with Resources

#@Add Resource@对话框
@Resource Type@
指定要创建的资源类型。
可以展开光标和对话框资源目录以显示附加资源。 这些资源位于 \Program Files\Microsoft Visual Studio.NET\Vc7\VCResourceTemplates\<LCID>\mfc.rct 中。如果添加其他 .rct 文件,则这些文件必须放在该目录下或必须为它们指定include path。 这些文件中包含的资源随后将显示在适当目录下的第二层。 对可添加的 .rct 文件数没有预设限制。
显示在树控件顶层的资源是 Visual Studio 提供的默认资源。
@New@
基于在@Resource Type@框中选择的类型创建资源。 资源在适当的编辑器内打开。 例如,创建新对话框资源将在Dialog editor中打开它。
@Import@
打开@Import@对话框,可在其中定位到希望导入当前项目中的资源。 该对话框使您得以导入位图、图标、光标、HTML 或声音 (.WAV) 资源,或当前资源文件的任何自定义资源。
@Custom@
打开New Custom Resource dialog box,可在其中创建新的自定义资源。 自定义资源只能在二进制编辑器中进行编辑。
请参见
Creating a New Resource

#@New Custom Resource@对话框
使您得以创建新自定义资源。
@Resource Type@
提供输入自定义资源类型名称的空间。 如果不以全部大写字母的形式输入名称,Visual C++ 在您退出时将名称大写。
请参见
Add Resource Dialog Box

#在项目外打开资源脚本文件(独立)
可以查看 .rc 文件中的资源而不必打开项目。 .rc 文件将在文档窗口中打开,而不是在Resource View窗口中打开(文件在项目内打开时的行为)。
注意 这是一个重要的区别,因为某些命令仅在文件独立打开(在项目外)时可用。 例如,仅当在项目外打开文件时,才能以不同的格式或不同的文件名保存文件(当在项目内打开文件时,@Save As@命令不可用)。
在项目外打开 .rc 文件
•从@File@菜单中选择@Open@,然后单击@File@。
•在@Open File@对话框中定位到要查看的资源脚本文件,突出显示该文件,并单击@Open@。
注意 如果先打开项目(@File@->@Open@->@Project@),则某些命令将不可用。 “独立”打开文件意味着在没有先加载项目的情况下打开文件。
若要以文本格式打开和查看资源文件,请参阅Editing a Resource Script (.rc) File。
在项目外打开多个 .rc 文件
1.同时独立打开两个资源文件。例如,打开 Source1.rc 和 Source2.rc。
a.从@File@菜单中选择@Open@,然后单击@File@。
b.在@Open File@对话框中定位到要打开的第一个资源脚本文件 (Source1.rc),突出显示该文件并单击@Open@。
c.重复上一步骤,打开第二个 .rc 文件 (Source2.rc)。
现在这两个 .rc 文件在单独的文档窗口中打开。
2.当这两个 .rc 文件都打开时,平铺窗口以便可以同时查看它们:
•从@Window@菜单中选择@New Horizontal Tab Group@或@New Vertical Tab Group@。
— 或 —
•右击 .rc 文件中的一个,并从快捷菜单中选择@New Horizontal Tab Group@或@New Vertical Tab Group@。
请参见
Resource Files Resource Editors

#以文本格式打开资源脚本文件
有时可能需要查看项目的资源脚本 (.rc) 文件的内容,而不必在特定的资源编辑器中打开资源(如对话框)。 例如,可能需要在资源文件中的所有对话框内搜索字符串,而不必分别打开每个对话框。
可以以文本格式轻松打开资源文件,查看文件所包含的所有资源并执行Text editor支持的全局操作。
注意 资源编辑器不直接读取 .rc 或 resource.h 文件。资源编译器将它们编译成由资源编辑器使用的 .aps 文件。该文件是一个编译步骤,只存储符号数据。与普通编译过程一样,非符号信息(如注释)在编译过程中被放弃。每当 .aps 文件与 .rc 文件不同步时,就会重新生成 .rc 文件(例如,当您进行“保存”时,资源编辑器将改写 .rc 文件和 resource.h 文件)。对资源本身所做的任何更改依然包含在 .rc 文件中,但一旦改写 .rc 文件就总会丢失注释。有关如何保留注释的信息,请参阅Including Resources at Compile Time。
以文本格式打开资源脚本文件
1.从@File@菜单中选择@Open@,然后单击@File@。
2.在@Open File@对话框中定位到要以文本格式查看的资源脚本文件。
3.突出显示该文件,然后单击@Open@按钮上的下拉箭头(位于按钮右边)。
4.从下拉菜单中选择@Open With@。
5.在@Open With@对话框中单击@Source Code (Text) Editor@。
6.从@Open As@下拉列表中选择@Text@。
资源在源码编辑器中打开。
— 或 —
1.在Solution Explorer中右击 .rc 文件。
2.从快捷菜单中选择@Open with...@,然后选择@Source Code (Text) Editor@。
请参见
Resource Files Resource Editors

#向资源脚本文件添加 MFC 支持
通常,当使用MFC Application Wizard生成用于 Windows 的 MFC 应用程序时,向导生成包含 Microsoft 基础类 (MFC) 的核心功能的基本文件集(包含资源脚本 (.rc) 文件)。 但是,如果正在编辑不基于 MFC 的 Windows 应用程序的 .rc 文件,则下面特定于 MFC 框架的功能不可用:
•MFC 代码向导(以前称为“MFC ClassWizard”)
•菜单提示字符串
•列出组合框控件的内容
•ActiveX 控件宿主
然而,可以向不具有 MFC 支持的现有 .rc 文件添加该支持。
向 .rc 文件添加 MFC 支持
1.打开资源脚本文件。
2.在Resource View中突出显示资源文件夹(如 MFC.rc)。
3.在Properties window中将@MFC Mode@属性设置为@True@。
注意 除设置该标志外,.rc 文件还必须是 MFC 项目的一部分。 例如,在 Win32 项目中的 .rc 文件上仅将@MFC Mode@设置为@True@不会提供任何 MFC 功能。
请参见
Resource Files Resource Editors

#编译时包含资源
通常,使用所有资源在一个资源脚本 (.rc) 文件中的默认安排既简单又方便。 然而,在编译时,可以通过在Resource Includes dialog box中的@Compile-time directives@框列出其他文件中的资源,将这些资源添加到当前项目。
将资源放置在主 .rc 文件以外的文件中有若干原因:
•向在保存 .rc 文件时不会被删除的资源语句添加注释。
资源编辑器不直接读取 .rc 或 resource.h 文件。资源编译器将它们编译成由资源编辑器使用的 .aps 文件。该文件是一个编译步骤,只存储符号数据。与普通编译过程一样,非符号信息(如注释)在编译过程中将被放弃。每当 .aps 文件与 .rc 文件不同步时,就会重新生成 .rc 文件(例如,当您进行“保存”时,资源编辑器将改写 .rc 文件和 resource.h 文件)。对资源本身所做的任何更改依然包含在 .rc 文件中,但一旦改写 .rc 文件就总会丢失注释。有关如何保留注释的信息,请参阅Including Resources at Compile Time。
•包含已开发和测试的并且不需进一步修改的资源。 (任何不具有 .rc 扩展名的包含文件都无法由资源编辑器编辑。)
•包含正在由若干不同项目使用的资源或为源代码版本控制系统部分的资源,这样,这些资源必须存在于修改将影响所有项目的中心位置。
•包含自定义格式的资源(如 RCDATA 资源)。 RCDATA 资源可能有特殊要求。 例如,不能将表达式用作 nameID 字段的值。 有关更多信息,请参阅 Platform SDK 文档。
如果现有的 .rc 文件中有满足这些条件中任一项的会话,则应将会话放置到一个或多个单独的 .rc 文件中并使用Resource Includes dialog box将其包含在项目中。 在新项目的 \res 子目录中创建的 Projectname.rc2 文件便是用于该目的。
在编译时将资源包含在项目中
1.将资源放置到具有唯一文件名的资源脚本文件中。 不要使用 projectname.rc,因为它是用于主资源脚本文件的文件名。
2.(在Resource View中)右击 .rc 文件并从快捷菜单中选择@Resource Includes@。
3.在@Compile-time directives@框中添加#include编译器指令,以将新资源文件包含在开发环境的主资源文件中。
以这种方式包含的文件中的资源在编译时成为可执行文件的一部分。 当处理项目的主 .rc 文件时,这些资源不能直接用于编辑或修改。 需要单独打开所包含的 .rc 文件。 资源编辑器不可编辑任何包含在其中的但不具有 .rc 扩展名的文件。
请参见
Resource Files Resource Editors 

……

相关阅读