用PUSHD/POPD获得bat文件执行的路径

简介:

PUSHD/POPD是为了获得bat文件执行的路径。

这个很实用,比如我们想在程序里调用bat文件,bat文件内容如下,先安装一个windows service,然后启动它:

installutil.exe /i "MyWindowsService.exe"
net.exe start "MyWindowsService"

如果我是在做一个安装程序,我需要把这些文件包括bat文件先copy到一个安装目录,而且这个目录一般是用户自己选择的,安装程序并不知道。那我们要想让安装程序调用这个bat文件,就需要把bat文件写成这样:

PUSHD "%~dp0"  //获得bat文件执行的路径
installutil.exe /i "MyWindowsService.exe"
net.exe start "MyWindowsService"
POPD

当然,为了保险起见,我们需要把installutil.exe和net.exe(都在c:\windows\system32\)copy到和bat文件相同的目录。这是为了保证有些操作系统可能是精简版或没有这些工具,安装程序也能顺利进行。




 本文转自loose_went博客园博客,原文链接:http://www.cnblogs.com/michaelxu/archive/2011/07/07/2100249.html ,如需转载请自行联系原作者
相关文章
BAT中取得一个命令的执行结果
BAT中取得一个命令的执行结果
1320 0
Bat 多个执行操作选择
Bat 多个执行操作选择
|
C语言 索引 Windows
BAT文件语法和技巧(bat文件的编写及使用)
BAT文件语法和技巧(bat文件的编写及使用)
248 0
BAT判断一个目录是否存在
BAT判断一个目录是否存在
404 0
BAT中删除整个目录的办法
BAT中删除整个目录的办法
458 0
bat文件调用CMD命令快速显示ip
bat文件调用CMD命令快速显示ip
469 0
BAT 批处理命令 - 实现输出当前文件夹下的所有文件夹名的功能实例演示
BAT 批处理命令 - 实现输出当前文件夹下的所有文件夹名的功能实例演示
505 0
BAT 批处理命令 - 实现输出当前文件夹下的所有文件夹名的功能实例演示
BAT中for循环处理某目录下的文件
BAT中for循环处理某目录下的文件
305 0
|
编译器 C语言 C++