Board logo

标题: [文件操作] 【已解决】程序拖到批处理上面使用批处理打开 [打印本页]

作者: gd6570    时间: 2015-2-10 22:42     标题: 【已解决】程序拖到批处理上面使用批处理打开

本帖最后由 gd6570 于 2015-2-12 21:37 编辑

代码如下
@echo off
mode con cols=50 lines=50
set a=
set -p a=
start %a%
exit

代码本来想实现的功能是将程序拖动到批处理上面就直接运行了,结果却是拖动到上面之后批处理打开了,还要在将程序拖动到打开的批处理界面上在回车才能运行

还要怎么改才能实现这个功能,拖动到上面直接打开???在线等,等,等
作者: pcl_test    时间: 2015-2-10 23:12

回复 1# gd6570
  1. start "" "%1"
复制代码

作者: CrLf    时间: 2015-2-10 23:29

回复 2# pcl_test


建议用 "%~1",否则 "%1" 的双引号可能反而导致转义无效,比如 %1="测 试.txt" 的时候
题外话,话说每次碰到 %1 %0 什么的,我都心惊胆颤,生怕放出了什么魔鬼:
http://www.bathome.net/viewthread.php?tid=7509
作者: gd6570    时间: 2015-2-11 13:20

回复  gd6570
pcl_test 发表于 2015-2-10 23:12



学习了,还有个问题如果需要psexec启动的时候,写成 psexec -s-i-d "" "%~1"就不行了,这个怎么破?
作者: gd6570    时间: 2015-2-11 13:21

回复  pcl_test


建议用 "%~1",否则 "%1" 的双引号可能反而导致转义无效,比如 %1="测 试.txt" 的时候 ...
CrLf 发表于 2015-2-10 23:29



    好像路径上有空格的时候这个改动就好了,学习了
作者: pcl_test    时间: 2015-2-11 13:49

回复 4# gd6570
  1. psexec -s-i-d "%~1"
复制代码

作者: gd6570    时间: 2015-2-11 19:43

回复  gd6570
pcl_test 发表于 2015-2-11 13:49



    试了这样不行的
作者: gd6570    时间: 2015-2-12 21:35

回复 7# gd6570


    可以,谢谢,偷懒把参数连着一起写出的错,加上空格完全OK,方便的很




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2