如何用vb在资源管理器的快捷菜单上添加自己的选项.txt

来自「VB技巧问答10000例,是一个教程」· 文本 代码 · 共 8 行

TXT
8
字号
对于简单的菜单应用实际并不需要编程,只需要修改注册表就可以实现。比如安装了PowerToy后,它会在你选择一个目录时增加一项Command Prompt Here,实际上只是在HKEY_CLASSES_ROOT\Directory\shell\DosHere\command下增加了一行: 
    C:\WIN95\command.com /k cd "%1" 
    这样Windows会把选择的文件或目录以命令行参数的形式传递给你的程序。参考QA000595 “如何在VB中加入命令行参数”。 
    不过如果你想制作复杂的应用就需要进行Shell Extension编程,具体地说是IContextMenu外壳扩展。你需要建立一个ActiveX DLL,在这个DLL中要实现IContextMenu(或IContextMenu2,两者的区别在于IContextMenu2允许菜单上包括图形)接口。实现了这个接口,你还需要修改相应的注册表项。这样,当用户选择一个文件后,系统会调用你的DLL,询问你是否支持该文件。如果支持,你就利用系统传递给你的菜单句柄,在这个菜单上加一个菜单项。如果用户选择了你的菜单项,系统会再次通知你,你就开始执行对该文件的操作。
    在Delphi和VC++中也有类似的示例程序。Delphi的例子在Borland\Delphi4\Demos\Activex\Shellext目录。 
<END>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?