📄 高级批处理文件函数.txt
字号:
在szFileName返回缺省批处理文件的全限定名。
返回值:
0:BatchGetFileName成功检索缺省批处理文件的全限定名。
< 0:BatchGetFileName未能检索缺省批处理文件的全限定名。
19.1.7 BatchMoveEx
语法:BatchMoveEx (szMove, szRefKey, nOptions, nMoveOption);
说明:BatchMoveEx函数将一个批处理文件中由szMove指定的行从一个位置移动至另一个位置。参数nOptions指定是把该行放置在批处理文件的开始或结尾,还是在szRefKey指定的行的前面或后面。调用BatchMoveEx前,你必须调用BatchFileLoad来把要修改的文件装入内存。在你修改该文件后,调用BatchFileSave来把它保存到磁盘。
参数:
szMove
指定标识要被移动行的参考关键字。
szRefKey
指定关键字,它标识用来定位移动行的参考行。如果szRefKey是一个空字符串,由szMove 指定的行移动到文件的开始或结尾,根据nOptions的值而定。
nOptions
指定将行移动到何处;给该参数传递下列预定义常量之一:
BEFORE:由szMove指定的行被移动到包含szRefKey参考关键字的行的前面。如果szRefKey是一个空字符串,则由szMove指定的行被移动到文件的开始。
AFTER:由szMove指定的行被移动到包含szRefKey参考关键字的行的后面。如果szRefKey是一个空字符串,则由szMove指定的行被移动到文件的结尾。
当你查找的参考关键字是一个DOS命令或程序名(而不是一个环境变量)时,将常量COMMAND和BEFORE 或AFTER用或操作符(|)连接,如下所示:
BatchMoveEx ("PATH", "SCAN.EXE", BEFORE | COMMAND, 0);
nMoveOption
指定szMove是一个命令还是一个环境变量。给该参数传递下列预定义常量之一:
0:指定szMove是一个环境变量。
COMMAND:指定szMove是一个命令。
返回值:
0:BatchMoveEx成功移动批处理文件中的指定行。
< 0:BatchMoveEx未能移动批处理文件中的指定行。
19.1.8 BatchSetFileName
语法:BatchSetFileName (szBatchFile);
说明:BatchSetFileName函数指定由Ez批处理文件函数及以一个空字符串为其参数调用BatchFileLoad时所使用的批处理文件名。在安装脚本中,该文件被作为缺省批处理文件。安装初始化过程中,缺省批处理文件被设置为系统使用的Autoexec.bat文件。
应重视下列有关BatchSetFileName的事实:
它不确认指定文件的存在性。
它不把文件装入内存。
参数:
szBatchFile
指定在安装脚本中作为缺省批处理文件使用的文件的全限定名。
返回值:
0:BatchSetFileName成功设置指定文件为缺省批处理文件。
< 0:BatchSetFileName未能设置指定文件为缺省批处理文件。
注解:
BatchSetFileName只简单地指定缺省批处理文件的名称。即使文件名是无效的或指定文件不存在时该函数也会成功。一个无效的文件名将导致随后的Ez批处理文件和高级批处理文件函数失败。
19.2 Ez批处理文件函数
Ez批处理文件函数修改缺省批处理文件。除非通过调用BatchSetFileName来修改,缺省批处理文件是Autoexec.bat。应注意的是每个Ez批处理文件函数打开缺省批处理文件然后在作修改后自动保存它。你使用Ez批处理文件函数时你不用调用函数来打开和保存。
不要把Ez批处理文件函数和高级批处理文件函数混合起来。调用BatchFileLoad之后,直到你调用了BatchFileSave保存文件后,你才能使用Ez批处理文件函数。
EzBatchAddPath
修改缺省批处理文件,通过添加一个路径名到一个PATH命令的查找路径或到一个赋给环境变量的值。
EzBatchAddString
添加一行文本到缺省批处理文件。
EzBatchReplace
置换缺省批处理文件中的一个语句。
19.2.1 EzBatchAddPath
语法:EzBatchAddPath (szKey, szPath, szRefDir, nPosition);
说明:EzBatchAddPath函数修改缺省批处理文件,通过添加一个路径名到一个PATH命令的查找路径或到一个赋给环境变量的值。除非通过调用BatchSetFileName来修改,缺省批处理文件是Autoexec.bat。
调用BatchGetFileName来确定缺省批处理文件的全限定名。为改变EzBatchAddPath使用的批处理文件的文件名,调用BatchSetFileName。该函数不支持长文件名。在把它传递到调用EzBatchAddPath 之前调用LongPathToShortPath来转换长路径到它等价短路径。
参数:
szKey
指定要修改的环境变量名。如,为修改PATH语句,在这儿指定”path”。 如果指定的环境变量没有在缺省批处理文件中找到,则为环境变量创建一个完整SET语句并插入到文件中。
szPath
指定添加到环境变量当前值的路径名。在查找路径中插入一个分界分号来把它和其它路径名分隔开。
szRefDir
指定与你添加的szPath新路径名相关的参考关键字(一个路径名)。如果这是一个空字符串,该路径名添加到查找路径的开始或结尾,根据nPosition的值而定。如果由szRegKey指定的路径名没有在查找路径中找到,szKey的值被添加到结尾。
nPosition
指定在查找路径的何处添加新路径名,具体包括以下选项:
BEFORE:新路径名被插入到szRefDir指定的路径名的前面。如果szRefDir 包含一个空字符串,该路径名被添加到查找路径的前面。
AFTER:新路径名被插入到szRefKey指定的路径名之后。如果szRefDir 包含一个空字符串,该路径名被添加到查找路径的结尾。
返回值:
0:EzBatchAddPath成功添加路径名到批处理文件。
< 0:EzBatchAddPath未能添加路径名到批处理文件。
注解:
·缺省批处理文件是隐藏或只读时EzBatchAddPath 可能失败。
·EzBatchAddPath对它修改的文件不做拷贝备分。
19.2.2 EzBatchAddString
语法:EzBatchAddString (szLine, szRefKey, nOptions);
说明:EzBatchAddString函数添加一文本行到缺省批处理文件;除非通过调用BatchSetFileName来修改,缺省批处理文件是Autoexec.bat。为确定缺省批处理文件的全限定名,调用BatchGetFileName。为修改由EzBatchAddPath使用的批处理文件的名称,调用BatchSetFileName。
参数:
szLine
指定添加到文件中的文本行。除非你在nOptions 指定NOSET,该函数假定szLine是一个环境变量;在szLine被写入到缺省批处理文件中前文本”SET”被插入到字符串的前面。
批处理文件完全不支持长路径名。如果你使用该函数来添加包含长路径名的一行,则必需先调用LongPathToShortPath把长路径名转换成它等价的短路径,然后再能把它插入到要添加至批处理文件的字符串中。
szRefKey
指定和你想要在缺省批处理文件中添加的szLine相关的参考关键字。EzBatchAddString在缺省批处理文件中查找参考关键字和在该行前面或后面放置szLine的内容,根据nOptions 的值。
nOptions
指定使用的选项;在该参数位置传递下列预定义常量之一:
BEFORE:SzLine被添加到包含szRefKey的行之前。如果szRefKey是一个空字符串,szLine被添加到文件的第一行。
AFTER:SzLine被添加到包含szRefKey的行之后。如果szRefKey是一个空字符串,szLine被添加到文件的最后一行。
REPLACE:SzLine置换文件中的一现存行。如果有多行有相同关键字存在,EzBatchAddString仅置换包含该关键字的最后一行。
NOSET:指定文本”SET”不被插入到szLine中的字符串的前面。该常量可以和BEFORE、 AFTER、 和REPLACE用或操作符(|)组合。
当你查找的参考关键字是一个DOS命令或程序名(而不是一个环境变量)时,将常量COMMAND和其它选项常量用或组合,如下所示:
EzBatchAddString (szLine, szRefKey, AFTER | COMMAND);
返回值:
0:EzBatchAddString成功添加文本字符串到一个指定批处理文件。
< 0:EzBatchAddString未能添加文本字符串。
注解:
·EzBatchAddString 在参数szRefKey中查找合适的参考关键字。如,一个环境变量的关键字是该环境变量本身的名称。
·如果缺省批处理文件是隐藏或只读时,EzBatchAddString可能失败。
·EzBatchAddString对它修改的文件不做拷贝备分。
19.2.3 EzBatchReplace
语法:EzBatchReplace (szNewString);
说明:EzBatchReplace函数置换缺省批处理文件中的一个现存行;除非通过调用BatchSetFileName来修改,缺省批处理文件是Autoexec.bat。为确定缺省批处理文件的全限定名,调用BatchGetFileName。为修改由EzBatchAddPath使用的批处理文件的名称,调用BatchSetFileName。
参数:
szNewString
指定置换文件中一现存行的新字符串。
批处理文件完全不支持长路径名。如果你使用该函数来添加包含长路径名的一行,则必需先调用LongPathToShortPath把长路径名转换成它等价的短路径,然后再能把它插入到要添加至批处理文件的字符串中。
返回值:
0:EzBatchReplace成功置换文本行。
< 0:EzBatchReplace未能置换文本行。
注解:
·EzBatchReplace分析szNewString并确定该字符串的关键字。然后它在缺省批处理文件中查找包含相同关键字的一行。该函数置换找到的有相同关键字的最后一行。
·一个批处理文件中的一些常用关键字是PATH、 COMSPEC、TEMP、Smartdrv.exe、Win.com、和Share.exe。
·如果缺省批处理文件是隐藏或只读时,EzBatchReplace函数可能失败。
·EzBatchReplace对它修改的文件不做拷贝备分。
本文来自:DOS资源站(www.cmdos.net) 详细出处参考:http://www.cmdos.net/article/sort01/info-1412.html
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -