中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-02 15:35
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 关于"ShowLnkTarget"脚本的问题 内有网址 查看 826 回复 2
楼 主 关于"ShowLnkTarget"脚本的问题 内有网址 发表于 2006-12-11 09:57 ·  中国 安徽 芜湖 电信
高级用户
★★★
积分 906
发帖 346
注册 2006-07-10 09:58
20年会员
UID 58334
性别 男
状态 离线
http://www.linuxdiyf.com/1/czxt/2006/0713/content_1241.htm

这个脚本.桌面的快捷方式.只有拨号的快捷方式有这个菜单.分区软件发到桌面的快捷方式无此菜单

如何让桌面快捷方式都有这个并能用菜单

VBS源码

'==========================================================================
'
' NAME: ShowLnkTarget.vbs
'
' AUTHOR: SleepBoy
' DATE : 2006-1-12
'
' COMMENT: 快速显示“快捷方式”中“目标”所在的位置,并把焦点停留在目标上。
'
' 安装说明:1. 放在任意目录中,直接双击脚本,即可完成安装。
' 2. 安装好之后,右键单击快捷方式,会出现一项“显示目标位置”。
' 3. 如果移动了脚本的位置,请再安装一次。
' 4. 脚本名字可以改变。改好之后,请再安装一次。
'
'==========================================================================

Option Explicit

Dim objArgs, WshShell
Set objArgs = WScript.Arguments
Set WshShell = WScript.CreateObject("WScript.Shell")

If objArgs.Count = 1 Then
ShowLnkTarget
ElseIf objArgs.Count = 0 Then
Setup
End If


'==========================================================================

Sub Setup
Dim QM
QM = """"
WshShell.RegWrite "HKCR\lnkfile\shell\ShowLnkTarget\", "显示目标位置"
WshShell.RegWrite "HKCR\lnkfile\shell\ShowLnkTarget\command\", _
QM & WScript.FullName & QM & " " & _
QM & WScript.ScriptFullName & QM & " " & _
QM & "%1" & QM
MsgBox "安装完毕!",64,WScript.ScriptName
End Sub

'---------------------------------------------------------------------------

Sub ShowLnkTarget
Dim lnkname, strComputer, objWMIService, colFiles, objFile
lnkname = Replace(objArgs(0),"\","\\")

strComputer = "."
Set objWMIService = GetObject _
("winmgmts:\\" & strComputer & "\root\cimv2")
Set colFiles = objWMIService.ExecQuery _
("Select * From Win32_ShortcutFile WHERE Name = " & "'" & lnkname & "'")

For Each objFile in colFiles
WshShell.Run ("explorer /n, /select," & objFile.Target)
Next
End Sub

'==========================================================================


[ Last edited by eech on 2006-12-11 at 10:01 AM ]
2 发表于 2006-12-12 00:49 ·  中国 四川 成都 教育网
铂金会员
★★★★
积分 7,493
发帖 2,672
注册 2005-09-02 00:00
20年会员
UID 42173
性别 男
状态 离线

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'>"
3 发表于 2006-12-12 12:08 ·  中国 湖北 荆门 电信
荣誉版主
★★★
积分 2,013
发帖 718
注册 2006-02-18 07:07
20年会员
UID 50550
状态 离线
需要确定你桌面上的文件后缀是否为.lnk,因为它在注册表中只指定了在lnk文件上才出现该选项。你可以在右键,属性,快捷方式,下是否有“查找目标”项。没有则可能不是合法的lnk。
至于获得源文件路径,也可以试试使用wscript.shell或shell.application对象。
论坛跳转: