中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何用批处理实现 xp 快捷方式的查找目标功能
作者:
标题: 如何用批处理实现 xp 快捷方式的查找目标功能 上一主题 | 下一主题
aaa321a
初级用户





积分 29
发帖 10
注册 2006-10-31
状态 离线
『楼 主』:  如何用批处理实现 xp 快捷方式的查找目标功能

如题,或者类似功能 比如转到 资源管理器-所在目录

2006-11-22 05:26
查看资料  发短消息 网志   编辑帖子  回复  引用回复
无奈何
荣誉版主





积分 1338
发帖 356
注册 2005-7-15
状态 离线
『第 2 楼』:  

到这里看看
http://www.cn-dos.net/forum/viewthread.php?tid=25053

[ Last edited by 无奈何 on 2006-11-25 at 06:00 AM ]



  ☆开始\运行 (WIN+R)☆
%ComSpec% /cset,=何奈无── 。何奈可无是原,事奈无做人奈无&for,/l,%i,in,(22,-1,0)do,@call,set/p= %,:~%i,1%<nul&ping/n 1 127.1>nul

2006-11-22 05:34
查看资料  发送邮件  发短消息 网志  OICQ (105400208)  编辑帖子  回复  引用回复
aaa321a
初级用户





积分 29
发帖 10
注册 2006-10-31
状态 离线
『第 3 楼』:  出现

@echo off

if "%~1" == "" goto :EOF

::检查扩展名是否是快捷方式文件

if /i "%~x1" NEQ ".lnk" goto error

for /f "delims=" %%i in ('find ":" "%~1" ^|findstr /r "^[A-z]:[\\]"') do (

start "" explorer /select,/n,"%%~fi"

)

goto :EOF

:error

::抛出错误提示窗口

start cmd /c "title 提示!&mode con cols=30 lines=5 &for /l %%i in (5,-1,1) do cls &echo. 所选文件不是快捷方式!( %%i )&ping/n 2 127.1>nul"



谢谢!
又  能否加到右键菜单呢

在注册表里试了一下,总是出现  所选文件不是快捷方式!
好像是参数不对
请高手指教

2006-11-22 07:02
查看资料  发短消息 网志   编辑帖子  回复  引用回复
electronixtar
铂金会员





积分 7493
发帖 2672
注册 2005-9-2
状态 离线
『第 4 楼』:  

可能的原因是:Windows会自动把 .lnk 指向目标文件。




C:\>BLOG http://initiative.yo2.cn/
C:\>hh.exe ntcmds.chm::/ntcmds.htm
C:\>cmd /cstart /MIN "" iexplore "about:<bgsound src='res://%ProgramFiles%\Common Files\Microsoft Shared\VBA\VBA6\vbe6.dll/10/5432'>"
2006-11-22 09:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
gues1688
新手上路





积分 8
发帖 5
注册 2006-11-25
状态 离线
『第 5 楼』:  

[quote]Originally posted by aaa321a at 2006-11-21 06:02 PM:
@echo off
if "%~1" == "" goto :EOF
::检查扩展名是否是快捷方式文件
if /i "%~x1" NEQ ".lnk" goto error
for /f "delims=" %%i in ('find ":" "%~1" ^|findstr /r "^[A-z]:[\\]"')

do (
explorer /select,/e,"%%~dpi"
)
goto :EOF
:error
::抛出错误提示窗口
start cmd /c "title 提示!&mode con  cols=30 lines=5 &for /l %%i in (5,-1,1) do cls &echo. 所选文件不是快捷方式!( %%i ) &ping/n 2 127.1>nul"
[/code]

[ Last edited by gues1688 on 2007-1-28 at 12:26 AM ]

2007-1-28 13:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
0401
中级用户

带走



积分 435
发帖 88
注册 2005-9-24
状态 离线
『第 6 楼』:  

如果是增加到右键菜单那就不必判断是否是.lhk文件了。在CMD下直接执行:
reg add HKCR\lnkfile\shell\ShortCutOpen /f /ve /d "定位文件(&E)"
reg add HKCR\lnkfile\shell\ShortCutOpen\command /f /ve /d "cmd /cfor /f \"delims=\" %%i in ('find \":\" \"%1\"^|findstr /r \"^^[A-Z]:[\\]\"') do @(explorer /select,/n,\"%~fi\")
我都是这么用的^_^ 如果是放到文件中,记得双写百分号。

2007-1-28 13:37
查看资料  发短消息 网志   编辑帖子  回复  引用回复
不得不爱
超级版主

我爱DOS


积分 5310
发帖 2044
注册 2005-9-26
来自 四川南充
状态 离线
『第 7 楼』:  

VBS版
@echo off
echo Set OS = GetObject("winmgmts:")>%windir%\czmd.vbs
echo Set CF = OS.ExecQuery("Select * From Win32_ShortcutFile WHERE Name = '" ^& Replace(WScript.Arguments(0),"\","\\") ^& "'")>>%windir%\czmd.vbs
echo Set WS = WScript.CreateObject("WScript.Shell")>>%windir%\czmd.vbs
echo For Each objFile in CF>>%windir%\czmd.vbs
echo WS.Run ("explorer /select," ^& objFile.Target)>>%windir%\czmd.vbs
echo Next>>%windir%\czmd.vbs
REG ADD HKCR\lnkfile\shell\查找目标\command /ve /d "C:\WINDOWS\system32\WScript.exe c:\windows\czmb.vbs %%1" /f
命令版:
@echo off
reg add HKCR\lnkfile\shell\定位文件\command /f /ve /d "cmd /cfor /f \"delims=\" %%%%i in ('find \":\" \"%%1\"^|findstr \"^^[A-Z]:[\\]\"') do explorer /select,/n,\"%%~fi\"




我的网络U盘 我的网络第2个U盘
论坛软件下载链接
灵雨飘零论坛  
论坛新手必读,所有人的基本行为准则
刷QQ空间人气、留言的小软件
2007-8-12 16:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: