写了一个程序,会保存为自定义的.rim文件,要想双击文件就我的程序打开,我用的方法是设置文件关联(win7)。在安装完程序的后会执行a.bat脚本进行一些初始化工作,而且会传入安装目录参数,执行方式为:

a.bat "C:\Program Files (x86)\xxx\"

在a.bat脚本中写:

set percent=%%
assoc .rim=etmap.file
ftype etmap.file="%installDir%xx.exe" "%percent%1" %percent%*

这样就能正确的转义%1了,如果直接写

ftype etmap.file="%installDir%xx.exe" "%1" %*

的话,%1会被为计算为a.bat脚本被执行时的第一个参数,即

"C:\Program Files (x86)\xxx\"

这就错了。


    简单地讲,要想转义%1就需要拼接字符串变量。