![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-11 23:20 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [求助]关于注册表键值的读取及为文件创建快捷方式 |
| 可打印版本 816 / 3 |
| 第1楼 Hanyeguxing | 发表于 2009-05-27 12:55 |
| 银牌会员 发帖 897 积分 1,039 来自 在地狱中仰望天堂 | |
|
[求助]关于注册表键值的读取及为文件创建快捷方式 设计如下:
批处理所在同目录下有一程序文件Easy RM Tools.exe,使用批处理为其在桌面创建一快捷方式。 1,考虑到桌面不一定在%USERPROFILE%\桌面,所以 读取"HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" 下的"Desktop"的值,并将其设为变量desk。 @ECHO OFF&SETLOCAL ENABLEDELAYEDEXPANSION for /f "tokens=1,2,*" %%i in ('REG QUERY "HKCU\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\EXPLORER\USER SHELL FOLDERS" ^| FIND /I "Desktop"') DO ( SET desk=%%k ECHO !desk!) 还有别的方法可以实现吗? 2,输出重定向的路径可以是桌面的CLSID吗? 因为可以使用Explorer /select, ::{450D8FBA-AD25-11D0-98A8-0800361B1103} 不知道echo等命令支持不? 3,如何为程序文件Easy RM Tools.exe用批处理创建一快捷方式? 要求:不使用第三方程序, 也不使用.url,即要求为.lnk 尽可能不用vbs脚本。例如下面的: @echo set shortCutPath="%USERPROFILE%\桌面\画图.lnk" echo Dim WshShell,Shortcut>>tmp.vbs echo Dim path,fso>>tmp.vbs echo path="%SystemRoot%\system32\mspaint.exe">>tmp.vbs echo Set fso=CreateObject("Scripting.FileSystemObject")>>tmp.vbs echo Set WshShell=WScript.CreateObject("WScript.Shell")>>tmp.vbs echo Set Shortcut=WshShell.CreateShortCut(%shortCutPath%)>>tmp.vbs echo Shortcut.TargetPath=path>>tmp.vbs echo Shortcut.Save>>tmp.vbs "%SystemRoot%\System32\WScript.exe" tmp.vbs @del /f /s /q tmp.vbs pause 4,考虑快捷方式中含参数。 参数-run:rmeditor用来打开Easy RM Tools.exe的剪辑界面 不用参数,则打开Easy RM Tools.exe的压缩界面 [ Last edited by Hanyeguxing on 2009-5-27 at 13:53 ] |
|
| 第2楼 slore | 发表于 2009-05-27 14:49 |
| 铂金会员 发帖 2,478 积分 5,212 | |
|
要求:不使用第三方程序,
也不使用.url,即要求为.lnk 尽可能不用vbs脚本。例如下面的: bat only? 那你还是放弃吧。 |
|
| 第3楼 tireless | 发表于 2009-05-28 00:01 |
| 银牌会员 发帖 1,122 积分 2,025 | |
| 第4楼 slore | 发表于 2009-05-28 02:27 |
| 铂金会员 发帖 2,478 积分 5,212 | |
|
汗~还不是得用VBS。。。
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |