在快捷方式的右键菜单上添加打开所在目录的菜单项

类别:.NET开发 点击:0 评论:0 推荐:

有时候经常要打开一个文件所在的文件夹,去寻找其他的文件,比如要打开vc的工具目录运行没有列在开始菜单中的程序,或是修改一个程序的配置文件。对于有快捷方式的,一般的做法是在快捷方式上右击,打开快捷方式的属性,通过find target来进入所在的文件夹。下面列出的vb script会直接打开快捷方式的目标文件所在的文件夹。通过修改注册表,可以在右键菜单上添加Open Folder项来调用这个脚本。

/************************open_shrtct_parent_folder.vbs******************************/
set args = WScript.Arguments
linkname = args(0)

set wshshell = CreateObject("WScript.Shell")

set scut = wshshell.CreateShortcut(linkname)

set fs = CreateObject("Scripting.FileSystemObject")

folder = """" & fs.GetParentFolderName(scut.TargetPath) & """"

wshshell.Run(folder)

/************************open_shrtct_parent_folder.vbs******************************/

/************************lnk.reg**************************/
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\lnkfile\shell]

[HKEY_CLASSES_ROOT\lnkfile\shell\Open Folder]

[HKEY_CLASSES_ROOT\lnkfile\shell\Open Folder\command]
@="wscript.exe \"F:\\Scripts\\open_shrtct_parent_folder.vbs\" \"%L\""

/************************lnk.reg**************************/
注:
1. 请修改上面的F:\\Scripts\\open_shrtct_parent_folder.vbs为实际存放open_shrtct_parent_folder.vbs的路径。
2. 不要复制/*****/行。

脚本的速度还是有点慢,有点电脑上测试打开会有比较大的延迟,但也有表现飞快地。
其实我一直使用C/C++,对vb和script都不熟。谁有兴趣可以直接写一个注册的脚本。

本文地址:http://com.8s8s.com/it/it43510.htm