好帖子,学习完涨了很多知识 |
请楼主分享一下,谢谢! |
这个很好,学习了啊 |
icevan 发表于 2018-1-10 21:33 抱歉!没有细看,很感谢你的热心提供,谢谢!!!但我自己弄得更简单方便——一双击“打开PETOOLS文件夹.bat”,PETOOLS文件夹就打开了...... |
icevan 发表于 2018-1-10 21:11 谢谢!不大合我的需要,PETOOLS文件夹要求挂载在PE的桌面,此批处理挂载在PE的开始菜单,而且我还要同时挂载许多其它应用程序和bat的快捷方式到PE的桌面...... |
论坛里有这个批处理。搜PETOOL就出来了 很多 贴 一个 PETOOLS.INI 由PECMD调用
PETOOLS.CMD 可以把指定目录下包括子目录下的外置程序添加到菜单和桌面
|
本帖最后由 lintrainwy 于 2018-1-9 17:27 编辑 2012jiashanni 发表于 2017-12-4 17:13 FOR /F "usebackq tokens=* delims=" %%i in (`dir /b^|findstr ".exe$"`) do ( echo 找到:%%i ) |
终于弄得比较理想了 |
看不懂,就是觉得高人多多。 |
API枚举目录下的EXE 并创建文件 CMD不知道怎么写 |
有阴也有阳 发表于 2017-12-2 13:25 之前是用手机,没仔细看,因为批处理里面要么是相对路径,要么是绝对路径,位置不确定的话必需先确定位置,所以这种情况下要用CALL的话,参照下面命令:
缺点:如果有两个盘符存在 \Y\A.bat ,两个\Y\A.bat均会被执行一次 额外小提示:CALL是可以返回的,返回的方式有两种:一是执行到批处理结束,二是用exit /b 返回,但是,exit是直接退出,不能用来做返回 |
@ECHO OFF setlocal ENABLEDELAYEDEXPANSION Title Origin 2017 安装 mode con: cols=65 lines=25 color 0A :------------------------------------- echo 检查 管理员权限... %Windir%\System32\FLTMC.exe >nul 2>&1 && goto gotAdmin set "vbs=CreateObject(""Shell.Application"").ShellExecute ""%~0"", """", """", ""runas"", 1:window.close" mshta VBScript:Execute("%vbs%") & exit /b :gotAdmin cls & pushd "%CD%" & CD /D "%~dp0" :-------------------------------------- set "PathBat=%~dp0" set "PathBat=%PathBat:~0,-1%" set "PathDesktop=%USERPROFILE%\Desktop" ::======================================= echo 创建快捷方式 echo. set "PathExe=%PathBat%" set "PathLnk=%PathDesktop%" set "Lnk=Test.lnk" set "Target=%PathExe%\Test.exe" set "Arguments=" set "WorkingDir=%PathExe%" set "Hotkey=" set "WindowStyle=1" set "Description=描述" echo 创建 %Lnk% call :CreateShort "%PathLnk%\%Lnk%" "%Target%" "%Arguments%" "%WorkingDir%\" "%Hotkey%" "%WindowStyle%" "%Description%" echo. echo 快捷方式创建完成! choice /c YN /t 1 /d Y>nul goto :EOF =================================================== ::LnkPath 快捷方式位置 ::LnkFile 快捷方式名 ::TargetPath 目标 ::Arguments 参数 ::WorkingDirectory 起始位置 ::Hotkey 快捷键 ::WindowStyle 窗口启动状态 ::Description 快捷方式备注 ::IconLocation 快捷方式图标,不设则使用默认图标 :CreateShort set "vbs= set a=CreateObject(""WScript.Shell"")" set "vbs=%vbs%: set b=a.CreateShortcut(""%~1"")" set "vbs=%vbs%: b.TargetPath=""%~2""" set "vbs=%vbs%: b.Arguments=""%~3""" set "vbs=%vbs%: b.WorkingDirectory=""%~4""" set "vbs=%vbs%: b.Hotkey=""%~5""" set "vbs=%vbs%: b.WindowStyle=""%~6""" set "vbs=%vbs%: b.Description=""%~7""" set "vbs=%vbs%: b.Save" set "vbs=%vbs%: close" mshta VBScript:Execute("%vbs%") goto :EOF :EOF |
本帖最后由 有阴也有阳 于 2017-12-2 15:34 编辑 mdyblog 发表于 2017-12-2 14:47 谢谢!!!,我弄明白了,是因为没有在PECMD.INI中添加: FORX \挂载常用软件到PE桌面.wcs,&&F,0,LOAD "%&F%" 所以要手动。 不过文件夹在启动U盘中,启动U盘插到不同的电脑上后其盘符——路径是不一样的,所以在PECMD.INI中启动U盘等的路径不好写, 还是到启动U盘里面的文件夹中直接点击“挂载常用软件的快捷方式到PE的桌面.bat”好了,谢谢你的热心回复!谢谢!!! |
本帖最后由 mdyblog 于 2017-12-2 14:51 编辑 有阴也有阳 发表于 2017-12-2 14:44 当然这样来! 什么程序 都得 启动他呀。 否则不就是病毒了。 在 PECMD.INI 中 启动他。 每次PE启动就能自动启动 。 PECMD.INI: FORX \挂载常用软件到PE桌面.wcs,&&F,0,LOAD "%&F%" 在U盘胡某分区根目录,放个 \挂载常用软件到PE桌面.wcs PE自动启动他。 它再启动子目录的 挂载常用软件到PE桌面.wcs 。。。。 |
挂载常用软件到PE桌面.wcs 放到该目录, 自动加载该目录的EXE CMD BAT到桌面。 如果子目录 也放有本脚本拷贝, 自动调用子目录的脚本来处理子目录, 依次类推, 没有级数限制。 |
本帖最后由 永远的大象 于 2017-12-2 22:49 编辑 参照你上面的需要,如果要用批处理实现的话,分成两个批处理: 一、搜索另一个批处理并执行,将其打包到WIM里面,加到启动执行,内容大致为:
二、创新快捷方式
|
captain_g 发表于 2017-12-2 10:43 试了一下,无法挂载,谢谢你的热心帮助! |
本帖最后由 永远的大象 于 2017-12-2 12:58 编辑
试试这个 缺点:程序文件名需要和文件夹名保持一致 PECMD可以用加载程序的方式来加载批处理 命令貌似是 PECMD EXEC ***.BAT 隐藏窗口的话,则在路径前面加个!,比如: PECMD EXEC !***.BAT 至于批处理里面加载另一个批处理,可以用CALL |
本帖最后由 captain_g 于 2017-12-2 10:55 编辑 最不动脑筋的做法就是在批处理中写三行: PECMD.EXE LINK %Desktop%\X1,X1.exe PECMD.EXE LINK %Desktop%\X2,X2.exe PECMD.EXE LINK %Desktop%\X3,X3.exe 也可以先搞好一个INI文件,内容类似这样: LINK %Desktop%\GHOSTEXP,%CurDir%\GHOSTEXP.EXE 然后在批处理中PECMD.EXE LOAD 那个INI文件; |
Powered by Discuz! X3.3
© 2001-2017 Comsenz Inc.