源于生活
标题:
[Not classified]做一个autorun文件
[打印本页]
作者:
kevin-ying
时间:
2013-9-11 14:35
标题:
[Not classified]做一个autorun文件
做一个autorun文件
了解Autorun.inf
什么是Autorun.inf文件呢,严格的说它是一个必须存放在驱动器根目录下的有一定格式的文本文件,它是由一个或多个“节”组成,每个“节”民须以节名作为开始的一行,节名必须用中括号[]括起来,节名之下则为本节中的命令。
其中Autorun.inf一共支持三个节,它们分虽为[autorun]、[autorun.alpha]、[Deviceinstall],其中只有[autorun]是必须存在的。
实例应用
现在我们就来以实例的方式来详细了解Autorun.inf文件到底有哪些庆用。
(1)自动运行
自动运行在前文有所接触,即使用Open命令进行,要注意的是“Open=”指定的文件必须为可执行文件,例如com、exe、bat;如果指定的文件不在根目录下,则需要指定其路径,例如Open=soft.bat,这就表示运行光盘根目录下soft文件夹中的1.bat文件。
小提示:如果要运行的文件不是com、exe、bat,那么也没关系,我们可以手工编写一个bat文件,将要打开的文件所在路径和文件名添加在bat之中即可。
(2)自定义光盘图标
在Autorun节中,还有一个比较好玩的命令行,那就是icon,一般情况下指定的图标文件可以是ico和bmp格式,当然也可以是包含图标资源的exe和dll文件,如果exe和dll文件中包含多个图标文件,那么就必须指定希望使用的图标索引号,要注意的是图标索引号是从0开始编号的,例如“icon=icon.dll,1”,那么就表示将使用icon.dll文件中的第二个图标。
小提示:icon不仅可以应用在光盘上,我们也可以将该命令编写进autorun.inf文件放置在硬盘根目录自定义硬盘的图标。
(3)自定义卷标
虽然说光盘刻录软件中一般都可以设置光盘卷标,但是如果要批量刻录的话,那就会显的很麻烦,不如使用命令定义的快捷。
定义卷标是利用Label命令来完成的,它的语法和Open、Icon是一样的,在这里不再多述。
(4)添加右键菜单
当我们右击刻录的光盘时,经常会在右键菜单中发现一个自动播放的选项,其实这主要是利用Autorun.inf中的Open命令来实现的,其实我们还可以根据需要添加其它菜单命令。
添加其它菜单命令的格式是“Shell<菜单命令名>Command=<要执行的文件>”,例如我们编写了一个文件内容如下:
[autorun]
shell打开记事本command=notepad.exe
这样当我们将该文件刻录进光盘时,右击光盘时在弹出菜单中就会有一个“打开记事本”的命令了。
(5)改变缺省操作
一般情况下应用autorun.inf的光盘双击缺省操作大多是自动播放,即执行open后面的文件操作。其实我们也可以改变这种情况,而这同样是利用shell命令来完成。
我们先来看一个典型双击安装软件的示例:
[autorun]
shellsetupcommand=softsetup.exe
shell eadme=安装软件
shell=setup
要看懂这段语句,我们可以从下向上看,当我们双击光盘时,将调用最后一句Shell=setup,因为设置了该句,那么双击时将查找对应Shellsetupcommand后面指定的命令来作为默认操作,因此默认的操作将变成执行光盘根目录下的soft文件夹中的setup.exe文件。
在这里主要介绍的是autorun节内容的应用,而对于autorun.alpha来说我们很少用到,而Deviceinstall只能在Windows XP下使用,可以利用它指定硬件向导进行递归搜索的子目录。
理论基础
经常使用光盘的朋友都知道,有很多光盘放入光驱就会自动运行,它们是怎么做的呢?光盘一放入光驱就会自动被执行,主要依靠两个文件,一是光盘上的AutoRun.inf文件,另一个是操作系统本身的系统文件之一的Cdvsd.vxd。Cdvsd.vxd会随时侦测光驱中是否有放入光盘的动作,如果有的话,便开始寻找光盘根目录下的AutoRun.inf文件。
很高兴回答楼主的问题 如有错误请见谅
欢迎光临 源于生活 (http://bbs.vingoo.info/)
Powered by Discuz! X3.1