用什么软件可以打开RES或CFG文件
1个回答
展开全部
RES
1、游戏中的应用
RES只是一个文本文档,其中包含一个文件列表。RES文件同BSP文件相对应。它用来通知HALF-LIFE服务器向客户端发送他们缺少的特定文件。除了后缀.RES,它必须和你的BSP文件名完全相同。因此,如果你的地图名为cs_mymap.bsp,那么你应该创建一个名为cs_mymap.res的文件。还有,BSP文件和BSP文件必须存放在同一目录下。也就是说,都应该放在MOD根目录下的"/maps"文件夹中。
RES文件的工作流程如下:
1.服务器更换成你自定义的地图,或者当自定义地图开启时客户端连接到你的服务器
2.服务器查找跟地图名(BSP文件)同名的RES文件
3.服务器调用RES文件,并按照其中的文件列表查找图片、声音等等需要发送往客户端的文件。
4.如果客户端没有这些指定的文件(或者存在同名文件但数据、大小不同),那么服务器将他们发送到客户端。
5.RES文件中提及的所有文件被下载完成后,客户端连接到服务器,并进入游戏。
在商务、私人社交上
RES 通常印在名片上,表示宅电,其全称是Residence
[编辑本段]2、Microsoft Internet Explore中的应用
当Win2003安装完毕时,默认是开启了Internet Explorer 增强的安全配置,可以在 控制面板--添加删除程序--组件中将其删除。
当开启“增强的安全配置”后,每次在用户打开网页时,系统都会自动调用C:\Windows\System32下的shdoclc.dll文件(动态链接库),从此文件中解压、调用一个hardAdmin.htm的Web页面,显示给用户。显示的路径是:res://shdoclc.dll/hardAdmin.htm(注意:不是HTTP)
RES状态下的网页附上一些官方的资料:
shdoclc - shdoclc.dll - DLL文件信息
DLL 文件: shdoclc 或者 shdoclc.dll
DLL 名称: Microsoft Shell Doc Object and Control Library
描述:
shdoclc.dll是为Windows应用程序添加基础文件和网络操作相关模块。
属于: Microsoft Windows
系统 DLL文件: 是
常见错误: File Not Found, Missing File, Exception Errors
安全等级 (0-5): 0
间谍软件: 否
广告软件: 否
[编辑本段]3、Windows程序资源文件
(1)作用
RES文件在Windows编程中被称为资源文件,用于存放字符串、程序图标、其他引用图片。Delphi的每个主程序中都含有{$R *.RES}指示字,表示家在于程序同名资源文件中存放的程序图标。巧妙地利用资源文件对于编程有意想不到的作用。
(2)RES文件的生成
RES文件是由RC文件编译而来的,请看以下RC文件示例:
文本文件“MyMusic.RC”:
SRC1 FILE1 OnlyYou.mp3
SRC2 FILE2 YesterdayOnceMore.mp3
SRC3 FILE3 MoonRiver.mp3
//另例:
//mycur cursor move.cur //加入光标
//mypic Bitmap Water.BMP //加入位图
//mywav WAVE happy.wav //加入声音
//myAVI AVI EPOEN.AVI //加入视频
//myIco ICON CJT.ICO //加入图标
其中,每一行表示声明一项资源,每一项资源的声明包含三个参数定义,第一个参数是资源的名称,第二个参数是资源的类型描述(本例定义了三类),第三个参数是文件名。参数之间必须由空格隔开。
编写完成“MyMusic.RC”文件后,将其与上述三个.MP3文件放置在同一文件夹中(为了避免由设置路径带来的麻烦)。然后以下面的命令行运行应用程序brcc32.exe(位于..\Delphi6\Bin):brcc32 mymusic.rc需要注意的是,该命令只能在命令行方式下执行。如果系统的PATH环境变量中不包含Delphi的运行路径,那么你还需要将brcc32.exe与MyMusic.RC、三个.MP3文件放置在同一路径中进行。运行上述命令行后,将在同一路径中得到文件“MyMusic.RES”,这就是一个独立完整的资源文件。
(3)RES文件的加载
你只需要在项目中的某个单元中(最好是你需要利用这些资源的单元,这样会使你的应用程序更具有可读性)加入如下编译指示:
{$R MyMusic.RES}
尽管该编译指示可以位于单元的任何位置,但为了使你的源代码结构合理,最好还是将其并列位于编译指示“{$R *.dfm}”(每个含有窗体文件的单元中都含有该行编译指示)。这里的编译指示就明确告诉编译器,在编译应用程序时需要将资源文件“MyMusic.RES”包含到应用程序中。
(4)资源文件的还原
下面的过程将告诉你如何将应用程序中包含的资源(文件)重新还原。
procedure MusicResToFile(const ResName, ResType,FileName: string);
var
Res: TResourceStream;
begin
Res := TResourceStream.Create(HInstance,ResName, PChar(ResType));
Res.SaveToFile(FileName); //将资源保存为文件,即还原文件
//你还可以进行其它的流操作,在内存中实现对资源利用而不必另存为文件
Res.Free;
end;
调用该过程的示例如:
MusicResToFile('SRC2', 'FILE2', 'TheSecondMusic.MP3');
值得一提的是,利用此方法,你完全可以制作自己的安装程序,该安装程序仅包含一个可执行文件,在该可执行文件中以资源的形式包含所有将要安装的内容(文件)。此外,如果在你的应用程序中需要播放外部音频文件(如背景音乐、声音提示等),也可通过此方法将这些外部文件包含到应用程序中,从而避免用户误删这些音频文件导致应用程序的不完整。
(5)RES文件的调用
资源文件在Delphi中的关键字为hinstance.下面给出具体用法.
<1>光标的调用
首先在程序中定义一个值大于0的常量,因为Delphi本身用0-负16来索引默认
的光标,所以我们制定的光标应从表面上1开始索引。然后在窗口的Oncreat事件
中添加以下代码:
screen.cursor[35]:=Loadcursor (hinstance,'mycur');
其中35为大于1的常量,mycur为光标在资源文件中的名字。如果希望在其他控
件上使用定制光标,例如Panel控件,只需在程序的适当处加入以下代码:
Panel1.cursor:=35;
<2>位图的调用
新建一项工程,添加一Timage控件,在需要显示的地方写以下代码:
Var mymap:Hbitmap;
begin
mymap:=LoadBitmap(hinstance,'mypic');
Image1.picture.Bitmap.Handle:=mymap;
end;
其中"mypic"为位图资源文件中的名称。
〈3〉AVI文件的调用
新建一工程,添加一Animate控件,在需要的地方加入:
animater1.resname:='myAVI';
animater1.Active:=true;
其中myAVI为视频文件在资源文件中的名称。
〈4〉调用WAV文件
在uses中加入mmsystm单元,以便在程序中播放WAV文件。播放时
Playsound(pchar('mywav'),hinstance,sndsync or snd_resource);
其中mywav为声音文件在资源中的名称。
〈5〉加入光标
加入光标比较容易,只要将res文件加入单元文件中即可。但需注意,名称最好
取"W"."WW"等,使第一个字母尽量靠后,以免与主程序的图标顺序颠倒。这样一
来,别人在使用你的程序时如果想选择其它图标就有很多选择了。
补充:
1.资源类型除上述类型外,还可以字体文件,字符串文件等。
2.资源文件不但可以在标准图形界面下使用还可在控制台下使用。
下面我们来试验一下:
新建一工程,将唯一的一个Form删除,然后修改工程文件。增加一句{$Apptype console},在uses子句中加入mmsystem,并将其它引用单元删掉。将Begin和end之间语句删掉。至此,我们就可和Turbo PASCAL下编程序一样,且还可以调用windows的API和资源。将资源文件----{$R myfist.res}加入。在Begin和end之间写下:
writeln('演示程序,按任意键开始!');
readln;
playsound(pchar('mywav'),hinstance,snd_sync or snd_resource);
writeln('演示结束!');
运行程序,将弹出一个标准DOS窗口,按任意键播放声音文件。是不是很COOL呢!
cfg
CFG:控制流图(Control flow graph)
控制流图(CFG)是用在编译器中的一个抽象数据结构。它是一个过程或程序的抽象表现,由编译器在内部维护。每个在图形中的节点代表一个基本块,例如,没有任何跳跃或跳跃目标的直线代码块;跳跃目标以一个块开始,和以一个块结束。定向边缘被用于代表在控制流中的跳跃。在那里,在大部分介绍中,两个特定的设计块:项目块,通过它控制到流图的输入,和编辑块,通过它全面控制流输出。
-----------------------------------------------------------
.cfg:迅雷下载配置文件的后缀名
使用迅雷开始下载的时候,迅雷会根据所下载的文件创建两个文件:*.td和*.td.cfg,这两个文件是迅雷的临时下载文件和配置文件,在*.td文件里是正在下载的数据,*.td.cfg文件是下载数据的配置文件,记录了配置信息,如线程、存放目录、用户名、 密码等。当文件下载完成后,迅雷会自动将*.td.cfg配置文件删除,并将*.td临时下载文件的后缀名.td去掉,变成所要正确下载的文件。如果下载文件的格式是td的,说明这个文件还没有下载完,请继续下载。
------------------------------------------------------------
CFG(Content-Free Grammar,上下文无关文法)
上下文无关文法(Content-Free Grammar, CFG)
在计算机科学中,若一个形式文法 G = (N, ∑, P, S) 的产生式规则都取如下的形式:V -> w,则称之为上下文无关的,其中 V∈N ,w∈(N∪∑)* 。上下文无关文法取名为“上下文无关”的原因就是因为字符 V 总可以被字串 w 自由替换,而无需考虑字符 V 出现的上下文。一个形式语言是上下文无关的,如果它是由上下文无关文法生成的(条目上下文无关语言)。
上下文无关文法重要的原因在于它们拥有足够强的表达力来表示大多数程序设计语言的语法;实际上,几乎所有程序设计语言都是通过上下文无关文法来定义的。另一方面,上下文无关文法又足够简单,使得我们可以构造有效的分析算法来检验一个给定字串是否是由某个上下文无关文法产生的。例子可以参见 LR 分析器和 LL 分析器。
BNF (巴克斯-诺尔范式)经常用来表达上下文无关文法。
上下文无关文法重要的原因在于它们拥有足够强的表达力来表示大多数程序设计语言的语法;实际上,几乎所有程序设计语言都是通过上下文无关文法来定义的。另一方面,上下文无关文法又足够简单,使得我们可以构造有效的分析算法来检验一个给定字串是否是由某个上下文无关文法产生的。例子可以参见 LR 分析器和 LL 分析器。
文法规则使用相似的表示法。名字用斜体表示(但它是一种不同的字体,所以可与正则表达式相区分)。竖线仍表示作为选择的元符号。并置也用作一种标准运算。但是这里没有重复的元符号(如正则表达式中的星号*),稍后还会再讲到它。表示法中的另一个差别是现在用箭头符号“→”代替了等号来表示名字的定义。这是由于现在的名字不能简单地由其定义取代,而需要更为复杂的定义过程来表示,这是由定义的递归本质决定的。
同正则表达式类似,文法规则是定义在一个字母表或符号集之上。在正则表达式中,这些符号通常就是字符,而在文法规则中,符号通常是表示字符串的记号。我们利用C中的枚举类型定义了在扫描程序中的记号;为了避免涉及到特定实现语言(例如C)中表示记号的细节,就使用了正则表达式本身来表示记号。此时的记号就是一个固定的符号,如同在保留字 while 中或诸如+或: =这样的特殊符号一样,对于作为表示多于一个串的标识符和数的记号来说,代码字体为斜体,这就同假设这个记号是正则表达式的名字(这是它经常的表示)一样。
1、游戏中的应用
RES只是一个文本文档,其中包含一个文件列表。RES文件同BSP文件相对应。它用来通知HALF-LIFE服务器向客户端发送他们缺少的特定文件。除了后缀.RES,它必须和你的BSP文件名完全相同。因此,如果你的地图名为cs_mymap.bsp,那么你应该创建一个名为cs_mymap.res的文件。还有,BSP文件和BSP文件必须存放在同一目录下。也就是说,都应该放在MOD根目录下的"/maps"文件夹中。
RES文件的工作流程如下:
1.服务器更换成你自定义的地图,或者当自定义地图开启时客户端连接到你的服务器
2.服务器查找跟地图名(BSP文件)同名的RES文件
3.服务器调用RES文件,并按照其中的文件列表查找图片、声音等等需要发送往客户端的文件。
4.如果客户端没有这些指定的文件(或者存在同名文件但数据、大小不同),那么服务器将他们发送到客户端。
5.RES文件中提及的所有文件被下载完成后,客户端连接到服务器,并进入游戏。
在商务、私人社交上
RES 通常印在名片上,表示宅电,其全称是Residence
[编辑本段]2、Microsoft Internet Explore中的应用
当Win2003安装完毕时,默认是开启了Internet Explorer 增强的安全配置,可以在 控制面板--添加删除程序--组件中将其删除。
当开启“增强的安全配置”后,每次在用户打开网页时,系统都会自动调用C:\Windows\System32下的shdoclc.dll文件(动态链接库),从此文件中解压、调用一个hardAdmin.htm的Web页面,显示给用户。显示的路径是:res://shdoclc.dll/hardAdmin.htm(注意:不是HTTP)
RES状态下的网页附上一些官方的资料:
shdoclc - shdoclc.dll - DLL文件信息
DLL 文件: shdoclc 或者 shdoclc.dll
DLL 名称: Microsoft Shell Doc Object and Control Library
描述:
shdoclc.dll是为Windows应用程序添加基础文件和网络操作相关模块。
属于: Microsoft Windows
系统 DLL文件: 是
常见错误: File Not Found, Missing File, Exception Errors
安全等级 (0-5): 0
间谍软件: 否
广告软件: 否
[编辑本段]3、Windows程序资源文件
(1)作用
RES文件在Windows编程中被称为资源文件,用于存放字符串、程序图标、其他引用图片。Delphi的每个主程序中都含有{$R *.RES}指示字,表示家在于程序同名资源文件中存放的程序图标。巧妙地利用资源文件对于编程有意想不到的作用。
(2)RES文件的生成
RES文件是由RC文件编译而来的,请看以下RC文件示例:
文本文件“MyMusic.RC”:
SRC1 FILE1 OnlyYou.mp3
SRC2 FILE2 YesterdayOnceMore.mp3
SRC3 FILE3 MoonRiver.mp3
//另例:
//mycur cursor move.cur //加入光标
//mypic Bitmap Water.BMP //加入位图
//mywav WAVE happy.wav //加入声音
//myAVI AVI EPOEN.AVI //加入视频
//myIco ICON CJT.ICO //加入图标
其中,每一行表示声明一项资源,每一项资源的声明包含三个参数定义,第一个参数是资源的名称,第二个参数是资源的类型描述(本例定义了三类),第三个参数是文件名。参数之间必须由空格隔开。
编写完成“MyMusic.RC”文件后,将其与上述三个.MP3文件放置在同一文件夹中(为了避免由设置路径带来的麻烦)。然后以下面的命令行运行应用程序brcc32.exe(位于..\Delphi6\Bin):brcc32 mymusic.rc需要注意的是,该命令只能在命令行方式下执行。如果系统的PATH环境变量中不包含Delphi的运行路径,那么你还需要将brcc32.exe与MyMusic.RC、三个.MP3文件放置在同一路径中进行。运行上述命令行后,将在同一路径中得到文件“MyMusic.RES”,这就是一个独立完整的资源文件。
(3)RES文件的加载
你只需要在项目中的某个单元中(最好是你需要利用这些资源的单元,这样会使你的应用程序更具有可读性)加入如下编译指示:
{$R MyMusic.RES}
尽管该编译指示可以位于单元的任何位置,但为了使你的源代码结构合理,最好还是将其并列位于编译指示“{$R *.dfm}”(每个含有窗体文件的单元中都含有该行编译指示)。这里的编译指示就明确告诉编译器,在编译应用程序时需要将资源文件“MyMusic.RES”包含到应用程序中。
(4)资源文件的还原
下面的过程将告诉你如何将应用程序中包含的资源(文件)重新还原。
procedure MusicResToFile(const ResName, ResType,FileName: string);
var
Res: TResourceStream;
begin
Res := TResourceStream.Create(HInstance,ResName, PChar(ResType));
Res.SaveToFile(FileName); //将资源保存为文件,即还原文件
//你还可以进行其它的流操作,在内存中实现对资源利用而不必另存为文件
Res.Free;
end;
调用该过程的示例如:
MusicResToFile('SRC2', 'FILE2', 'TheSecondMusic.MP3');
值得一提的是,利用此方法,你完全可以制作自己的安装程序,该安装程序仅包含一个可执行文件,在该可执行文件中以资源的形式包含所有将要安装的内容(文件)。此外,如果在你的应用程序中需要播放外部音频文件(如背景音乐、声音提示等),也可通过此方法将这些外部文件包含到应用程序中,从而避免用户误删这些音频文件导致应用程序的不完整。
(5)RES文件的调用
资源文件在Delphi中的关键字为hinstance.下面给出具体用法.
<1>光标的调用
首先在程序中定义一个值大于0的常量,因为Delphi本身用0-负16来索引默认
的光标,所以我们制定的光标应从表面上1开始索引。然后在窗口的Oncreat事件
中添加以下代码:
screen.cursor[35]:=Loadcursor (hinstance,'mycur');
其中35为大于1的常量,mycur为光标在资源文件中的名字。如果希望在其他控
件上使用定制光标,例如Panel控件,只需在程序的适当处加入以下代码:
Panel1.cursor:=35;
<2>位图的调用
新建一项工程,添加一Timage控件,在需要显示的地方写以下代码:
Var mymap:Hbitmap;
begin
mymap:=LoadBitmap(hinstance,'mypic');
Image1.picture.Bitmap.Handle:=mymap;
end;
其中"mypic"为位图资源文件中的名称。
〈3〉AVI文件的调用
新建一工程,添加一Animate控件,在需要的地方加入:
animater1.resname:='myAVI';
animater1.Active:=true;
其中myAVI为视频文件在资源文件中的名称。
〈4〉调用WAV文件
在uses中加入mmsystm单元,以便在程序中播放WAV文件。播放时
Playsound(pchar('mywav'),hinstance,sndsync or snd_resource);
其中mywav为声音文件在资源中的名称。
〈5〉加入光标
加入光标比较容易,只要将res文件加入单元文件中即可。但需注意,名称最好
取"W"."WW"等,使第一个字母尽量靠后,以免与主程序的图标顺序颠倒。这样一
来,别人在使用你的程序时如果想选择其它图标就有很多选择了。
补充:
1.资源类型除上述类型外,还可以字体文件,字符串文件等。
2.资源文件不但可以在标准图形界面下使用还可在控制台下使用。
下面我们来试验一下:
新建一工程,将唯一的一个Form删除,然后修改工程文件。增加一句{$Apptype console},在uses子句中加入mmsystem,并将其它引用单元删掉。将Begin和end之间语句删掉。至此,我们就可和Turbo PASCAL下编程序一样,且还可以调用windows的API和资源。将资源文件----{$R myfist.res}加入。在Begin和end之间写下:
writeln('演示程序,按任意键开始!');
readln;
playsound(pchar('mywav'),hinstance,snd_sync or snd_resource);
writeln('演示结束!');
运行程序,将弹出一个标准DOS窗口,按任意键播放声音文件。是不是很COOL呢!
cfg
CFG:控制流图(Control flow graph)
控制流图(CFG)是用在编译器中的一个抽象数据结构。它是一个过程或程序的抽象表现,由编译器在内部维护。每个在图形中的节点代表一个基本块,例如,没有任何跳跃或跳跃目标的直线代码块;跳跃目标以一个块开始,和以一个块结束。定向边缘被用于代表在控制流中的跳跃。在那里,在大部分介绍中,两个特定的设计块:项目块,通过它控制到流图的输入,和编辑块,通过它全面控制流输出。
-----------------------------------------------------------
.cfg:迅雷下载配置文件的后缀名
使用迅雷开始下载的时候,迅雷会根据所下载的文件创建两个文件:*.td和*.td.cfg,这两个文件是迅雷的临时下载文件和配置文件,在*.td文件里是正在下载的数据,*.td.cfg文件是下载数据的配置文件,记录了配置信息,如线程、存放目录、用户名、 密码等。当文件下载完成后,迅雷会自动将*.td.cfg配置文件删除,并将*.td临时下载文件的后缀名.td去掉,变成所要正确下载的文件。如果下载文件的格式是td的,说明这个文件还没有下载完,请继续下载。
------------------------------------------------------------
CFG(Content-Free Grammar,上下文无关文法)
上下文无关文法(Content-Free Grammar, CFG)
在计算机科学中,若一个形式文法 G = (N, ∑, P, S) 的产生式规则都取如下的形式:V -> w,则称之为上下文无关的,其中 V∈N ,w∈(N∪∑)* 。上下文无关文法取名为“上下文无关”的原因就是因为字符 V 总可以被字串 w 自由替换,而无需考虑字符 V 出现的上下文。一个形式语言是上下文无关的,如果它是由上下文无关文法生成的(条目上下文无关语言)。
上下文无关文法重要的原因在于它们拥有足够强的表达力来表示大多数程序设计语言的语法;实际上,几乎所有程序设计语言都是通过上下文无关文法来定义的。另一方面,上下文无关文法又足够简单,使得我们可以构造有效的分析算法来检验一个给定字串是否是由某个上下文无关文法产生的。例子可以参见 LR 分析器和 LL 分析器。
BNF (巴克斯-诺尔范式)经常用来表达上下文无关文法。
上下文无关文法重要的原因在于它们拥有足够强的表达力来表示大多数程序设计语言的语法;实际上,几乎所有程序设计语言都是通过上下文无关文法来定义的。另一方面,上下文无关文法又足够简单,使得我们可以构造有效的分析算法来检验一个给定字串是否是由某个上下文无关文法产生的。例子可以参见 LR 分析器和 LL 分析器。
文法规则使用相似的表示法。名字用斜体表示(但它是一种不同的字体,所以可与正则表达式相区分)。竖线仍表示作为选择的元符号。并置也用作一种标准运算。但是这里没有重复的元符号(如正则表达式中的星号*),稍后还会再讲到它。表示法中的另一个差别是现在用箭头符号“→”代替了等号来表示名字的定义。这是由于现在的名字不能简单地由其定义取代,而需要更为复杂的定义过程来表示,这是由定义的递归本质决定的。
同正则表达式类似,文法规则是定义在一个字母表或符号集之上。在正则表达式中,这些符号通常就是字符,而在文法规则中,符号通常是表示字符串的记号。我们利用C中的枚举类型定义了在扫描程序中的记号;为了避免涉及到特定实现语言(例如C)中表示记号的细节,就使用了正则表达式本身来表示记号。此时的记号就是一个固定的符号,如同在保留字 while 中或诸如+或: =这样的特殊符号一样,对于作为表示多于一个串的标识符和数的记号来说,代码字体为斜体,这就同假设这个记号是正则表达式的名字(这是它经常的表示)一样。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |