bat 文件在windowsXP和Windows7 上的一点区别 .

来源:互联网 发布:专业课视频软件 编辑:程序博客网 时间:2024/05/17 14:25
 

在 winxp 上,如果想通过 bat文件注册一个com组建或ocx组件,如果在同一文件下, 直接 regsvr32 ....ocx就可以注册了,

 

但是在 win7 上, 如果用bat文件注册 com组建或ocx组件, 首先要用 “否则注册出错,管理员身份”运行bat文件, 而且 bat文件的内也要改变一下, 就是 被注册的 com组建或ocx组建时 完全路径, 而不可以像winxp系统下直接 regsvr32 + 组建;

为简便起见,像xp那样, 可以在 bat文件开头,“cd /d %~dp0 ” 这句话,这样,就可以像xp那样注册组建了;

 

 

扩展知识:

 

获取批处理文件所在路径

关键字:获取批处理文件所在路径 在开发时,经常需要使用批处理运行一些程序,JAVA程序 犹其是这样,往往需要运行时根路径。Hardcode一个路径总是令自己觉得不自在,例如一个JAVA程序从一台机copy到另外一台机,盘符往往发生变化,先修改一下bat里的路径再运行显然很麻烦。
在批处理开头加入cd /d %~dp0 一行代码就真真实实地做到“编写一次,到处运行”。%0是批处理文件本身的路径,%~dp进行扩展, d向前扩展到驱动器,p往后扩展到路径。例如,你的bat文件在e:/mybat/test.bat,则%0就是e:/mybat/test.bat, %~dp0是e:/mybat/。
另外,%i提取第i个命令选项,例如%1提取第1个option,i可以取值从1到9
%~0: 取文件名(名+扩展名)
%~f0:取全路径
%~d0:取驱动器名
%~p0:只取路径(不包驱动器)
%~n0:只取文件名
%~x0:只取文件扩展名
%~s0:取缩写全路径名
%~a0:取文件属性
%~t0:取文件创建时间
%~z0:取文件大小
以上选项可以组合起来使用。

 

在开发时,经常需要使用批处理运行一些程序,JAVA程序 犹其是这样,往往需要运行时根路径。Hardcode一个路径总是令自己觉得不自在,例如一个JAVA程序从一台机copy到另外一台机,盘符往往发生变化,先修改一下bat里的路径再运行显然很麻烦。 在批处理开头加入cd /d %~dp0 一行代码就真真实实地做到“编写一次,到处运行”。%0是批处理文件本身的路径,%~dp进行扩展, d向前扩展到驱动器,p往后扩展到路径。例如,你的bat文件在e:/mybat/test.bat,则%0就是e:/mybat/test.bat, %~dp0是e:/mybat/。 另外,%i提取第i个命令选项,例如%1提取第1个option,i可以取值从1到9 %~0: 取文件名(名+扩展名) %~f0:取全路径 %~d0:取驱动器名 %~p0:只取路径(不包驱动器) %~n0:只取文件名 %~x0:只取文件扩展名 %~s0:取缩写全路径名 %~a0:取文件属性 %~t0:取文件创建时间 %~z0:取文件大小 以上选项可以组合起来使用。