无忧启动论坛

标题: 求一个在PE中直接启动、运行启动U盘中的某一应用程序的批处理 [打印本页]

作者: 有阴也有阳    时间: 2017-12-9 12:13
标题: 求一个在PE中直接启动、运行启动U盘中的某一应用程序的批处理
        求一个在PE中直接启动、运行启动U盘中的某一应用程序的批处理,需要在PE的桌面运行,可能要

用相对路径,或从A——Z逐盘搜寻......


                                                                                 谢谢!!!

作者: 永远的大象    时间: 2017-12-9 13:07
  1. for %%i in ( A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ) Do if exist %%i:\XX\XX.EXE %%i:\XX\XX.EXE
复制代码

如果路径里面有空格,%%i:\XX\XX.EXE 要用英文半角的双引号括起来,比如:"%%i:\XX\XX.EXE"
作者: 有阴也有阳    时间: 2017-12-9 14:06
永远的大象 发表于 2017-12-9 13:07
如果路径里面有空格,%%i:\XX\XX.EXE 要用英文半角的双引号括起来,比如:"%%i:\XX\XX.EXE"

         谢谢!试运行成功,但BAT运行完后,CMD窗口不能自动关闭,麻烦你看一下,在批处理后面再加上一个什么命令,

能让批处理在运行完后自动关闭CMD窗口。

        麻烦你了,再次感谢!!!




作者: captain_g    时间: 2017-12-9 16:43
...... Do if exist %%i:\XX\XX.EXE START %%i:\XX\XX.EXE
EXIT

这样应该行的。
作者: 有阴也有阳    时间: 2017-12-9 17:03
本帖最后由 有阴也有阳 于 2017-12-9 17:07 编辑
captain_g 发表于 2017-12-9 16:43
...... Do if exist %%i:\XX\XX.EXE START %%i:\XX\XX.EXE
EXIT


试过了,不行。

这个也不行:

taskkill  /f /im cmd.exe

目前只能手动关闭。
作者: captain_g    时间: 2017-12-9 20:00
不知道你的批处理中还有什么,我一直都是这样用的,有效的。
作者: 江南一根葱    时间: 2017-12-9 20:29
你start 是不会自动关闭cmd黑窗的,
要start ""  abcd.exe这样
作者: 永远的大象    时间: 2017-12-10 00:49
有阴也有阳 发表于 2017-12-9 14:06
谢谢!试运行成功,但BAT运行完后,CMD窗口不能自动关闭,麻烦你看一下,在批处理后面再加上一 ...


这个是批处理运行机制的原因,处理完一条命令之前不会执行下一条命令。
本来解决方法是用 Start XX.exe,但加 Start 的话,有些程序执行不了,所以我前面没加上
7楼说的用 Start "" XX.exe 应该可以,你试一下把最后面替换一下

  1. for %%i in ( A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ) Do if exist %%i:\XX\XX.EXE start "" %%i:\XX\XX.EXE
复制代码

作者: captain_g    时间: 2017-12-10 09:14
永远的大象 发表于 2017-12-10 00:49
这个是批处理运行机制的原因,处理完一条命令之前不会执行下一条命令。
本来解决方法是用 Start XX.ex ...

也许有些程序执行不来,但我在有限的环境中还没碰到过;

问题应该出在楼主的批处理中。

...... Do if exist %%i:\XX\XX.EXE START %%i:\XX\XX.EXE

加或不加EXIT一句,最终肯定是能退出命令窗口的,试一试其实不费事的。

作者: 有阴也有阳    时间: 2017-12-11 10:01
永远的大象 发表于 2017-12-10 00:49
这个是批处理运行机制的原因,处理完一条命令之前不会执行下一条命令。
本来解决方法是用 Start XX.ex ...

        谢谢!!!添加了   start ""  一句后,CMD窗口在执行完bat后果然能自动关闭:

for %%i in ( A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ) Do if exist %%i:\XX\XX.EXE start "" %%i:\XX\XX.EXE

作者: 永远的大象    时间: 2017-12-11 14:00
有阴也有阳 发表于 2017-12-11 10:01
谢谢!!!添加了   start ""  一句后,CMD窗口在执行完bat后果然能自动关闭:

for %%i in (  ...

批处理最前面加一行
  1. @echo off
复制代码

就不会有那么多内容显示出来了
作者: 有阴也有阳    时间: 2017-12-11 15:04
永远的大象 发表于 2017-12-11 14:00
批处理最前面加一行

就不会有那么多内容显示出来了

谢谢!!!
作者: 2012jiashanni    时间: 2017-12-11 15:43
在PECMD.INI 加入  load \tools\tools.INI  在U盘中新建  \tools\tools.INI     INI内容为 Exec %CurDir%\xxx.EXE
作者: 36D    时间: 2022-4-8 23:17
实用,支持,刚好需要
作者: a270412908    时间: 2022-4-26 18:07
可以帮你编程一个软件实现




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3