[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
直接调用 lnk 文件就行了,非要拆出参数来处理的话,
以 ”chrome 浏览器的自定义快捷方式“ 为例,先手动将 chrome 的快捷方式修改为把数据目录和缓存目录重定向到 D 盘。
这时要调用 lnk 文件并读取它的参数,
参考如下:
  1. @goto :main
  2. @rem Usage:
  3. rem "快捷方式的读取和运行.bat" "C:\your path\Google Chrome (重定向用户文件夹).lnk"
  4. rem "C:\your path\Google Chrome (重定向用户文件夹).lnk" 右键“属性” - 目标:
  5. rem "C:\Program Files\Google\Chrome\Application\chrome.exe" --enable-contextual-search --user-data-dir="D:\Program Files\Google\Chrome\User Data" --disk-cache-dir="D:\Program Files\Google\Chrome\cache"
  6. :main
  7. @echo off&setlocal EnableDelayedExpansion
  8. set "p=%~1"
  9. if /i not "%~x1"==".LNK" (echo exit) else (
  10. (echo Dim objShell, objFolder, objFolderItem, objShellLink, s
  11. echo Set objShell = CreateObject("Shell.Application"^)               ''创建对象
  12. echo Set objFolder = objShell.NameSpace("%~dp1"^)                    ''LNK文件所在目录路径
  13. echo Set objFolderItem = objFolder.ParseName("%~nx1"^)               ''LNK文件名
  14. echo Set objShellLink = objFolderItem.GetLink                        ''获取快捷方式对象
  15. echo Set wshShell=CreateObject("WScript.Shell"^)
  16. @REM 方法 8
  17. REM echo wshShell.Run """" ^& objShellLink.Path ^& """" ^& Chr(32^) ^& objShellLink.Arguments
  18. @REM 方法 7
  19. echo wshShell.Run """%~1"""
  20. Set wshShell = Nothing
  21. Set objShell = Nothing
  22. )>"%TEMP%\makelnk.vbs"
  23. "%TEMP%"\makelnk.vbs
  24. del /f /q "%TEMP%\makelnk.vbs"
  25. )
  26. goto :eof
复制代码

TOP

返回列表