2012-06-01 64 views
1

这是我的代码,我拖放几个图像到一个来压缩所有这些图像。通过拖放批处理文件来改变相对路径

if [%1]==[] goto :eof 
:loop 
start %~dp0ImgCompress.exe %1 
shift 
if not [%1]==[] goto loop 

这是行之有效的第一个文件,但在第二次及以后的相对路径(%〜DP0)成为我拖放文件的相对路径。我的想法是,%〜dp0是执行文件的相对路径。任何想法如何克服这个问题?

回答

2

批处理文件的路径是%0。 Shift使得%1变成%0。为了解决你的问题节省%〜DP0:

set mydir=%~dp0 

并在以后使用它:

start %mydir%ImgCompress.exe %1 
相关问题