中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-12 19:38
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS批处理 & 脚本技术(批处理室) » 用 批处理 如何获取一个快捷方式的绝对路径
可打印版本  970 / 5
第1楼 evilangell 发表于 2009-11-22 16:17
初级用户 发帖 32 积分 32
用 批处理 如何获取一个快捷方式的绝对路径
有个批处理:a.bat
内容就一句话 为:

runas.exe /user:BASEUSER "%~f1"

如果我把一个程序的快捷方式拖到这个P处理上,但无法运行.感觉"%~f1"还是快捷方式本身

有知道的朋友能否告知一声,谢谢了
第2楼 HAT 发表于 2009-11-22 17:25
版主 发帖 5,017 积分 9,023
批处理获取快捷方式指向的路径
http://bbs.bathome.cn/thread-3418-1-1.html

vbs能否获取快捷方式中的程序路径?
http://www.cn-dos.net/forum/viewthread.php?tid=34397
第3楼 everest79 发表于 2009-11-22 17:29
金牌会员 发帖 1,127 积分 2,564
start "%~1"
第4楼 evilangell 发表于 2009-11-23 00:00
初级用户 发帖 32 积分 32
用了tireless朋友的方法,可以实现拖 .lnk的,

for /f "skip=3 delims=" %%p in ('find ":\" %1') do runas.exe /user:USERBASE "%%p"

但关于程序本身的.exe拖到这个批处理上却无法运行.

怎么实现无论是.lnk或者.exe的都可以拖呢?
第5楼 balinger 发表于 2009-11-23 20:06
中级用户 发帖 115 积分 356
苯办法,先判断后跳转。
@echo off
if %~x1==.lnk goto :lnk
if %~x1==.exe goto :exe
echo not lnk or exe
pause
exit
:lnk
::快捷方式语句

exit
:exe
::程序语句
第6楼 evilangell 发表于 2009-11-24 00:07
初级用户 发帖 32 积分 32
楼上的朋友也不失为一种可行的方法,TKS
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023