修改右键菜单应该在注册表中,具体的说,是在HKEY_CLASSES_ROOT根键下(这里可是右键菜单中所有命令的根源哦!)。展开该根键,其下的子键主要有两种:扩展名键(.+扩展名)和类定义键(如图1)。一般地说,只要是在windows系统中已注册过的扩展名,在HKEY_CLASSES_ROOT下均有“·该扩展名”子键 ,记录该扩展名的一些信息,对某种特定类型的文件的右键菜单的修改,便是在该键或“扩展名file”键下的操作。
一、在所有的文件右键菜单中加入命令
如果你的系统上安装有Winzip、UltraEdit等,当你对任一文件点右键时,都会有“Add to zip”、“UltraEdit-32”等命令(当然,Winzip稍有不同,我将在后面讲到)。它的添加方法是:
1.打开“HKEY_CLASSES_ROOT\*”;
2.在其下新建“shell\命令\command”分支,再将command的键值设为执行该命令时所用的可执行程序的绝对路径,并在其后加“%1”即可。
例:在“HKEY_CLASSES_R
OOT\*”下新建“shell\用写字板打开\command”子键,将command的键值设为“c:\windows\notepad.exe %1”,就会在右键菜单中出现“用写字板打开”的命令了(如图2)。
说明:
1. 要删除该类命令,只需将“命令”子键删除即可;
2. 有的人或许会问他按我写的去做,但是得到的为何与我的有一些不同,这就是我的命令里有快捷键(N),只要在“用写字板打开”后加入“(&N)”即可。
二、在特定文件类型的右键菜单中加入命令
刚才说到了Winzip这个软件,对普通的文件类型,它的右键菜单中有“Add to zip”,但是对它所支持的压缩文件类型,如*.zip、*.cab、*.rar在其右键菜单中有“Open with Winzip”、“Extract to”、“Extract to folder”、“Create Self-Extractor(.EXE)” 等命令,对于自解压性安装文件(如OICQ99b),其右键菜单中有“Run with Winzip”命令。下面是特定文件类型的右键菜单的命令添加方法(以在mp3文件的右键菜单中加入Play with winamp为例):
1.打开“HKEY_CLASSES_ROOT\mp3_auto_file”主键;
2.在其下新建“shell\Play with Winamp(&P)\command”,将command的键值设为“C:\Program files\winamp\winamp.exe %1” 。
说明:当有多个软件可以播放mp3文件时,我们可以在右键菜单中添加多条命令,如加入“Play with Unreal”等命令,但是我们如何将某一条命令定义为默认操作(即右键菜单中的黑体命令)呢?
你一定会说,很简单的事情吗!将mouse移向一mp3文件,在按右键的同时按shift,在右键菜单中选“打开方式“便可更改,但是这是错误的,不信你试试看,这样只有在右键菜单中选“打开”时才会用你所选择的程序来打开它,否则,它仍旧一如继往。因为它的默认操作不是“打开“这条命令。真正的方法是将shell的默认键值改为你所想执行的命令,例如将shell的键值改为“Winamp”,
分享到:
相关推荐
C#在gridview添加右键菜单(C#源码) C#在gridview添加右键菜单(C#源码) C#在gridview添加右键菜单(C#源码) C#在gridview添加右键菜单(C#源码) C#在gridview添加右键菜单(C#源码) C#在gridview添加右键菜单...
C#Tree View右键菜单,树节点编辑,增加节点,删除节点,复制粘贴节点
代码 中详细描述了 如何修改和添加右键菜单
为文件夹或者文件类型 添加右键菜单,文件类型 根据后缀进行区别,我搜过次软件方面的资料 发现没有此方面的资料,所有给广大网友分享一个,有问题可以在下面回复 我看到了 会回复的。
文档是关于如何通过C#开发右键单击菜单,非常详细
通过注册表把自己的程序添加进入右键(如“我的右键菜单”),鼠标右键某个(或多个)文件时选择“我的右键菜单”,然后弹出winform程序,鼠标选中文件的完整路径及文件名自动显示在winfom中,类似WinRAR右键菜单...
类似Winrar的自定义右键菜单,完整的DEMO程序。 自定义鼠标右键菜单(包括菜单小图标,次级菜单,回传程序),可一次性处理多个目录和文件,获取相关地址,将地址作为参数列表传递给后续WPF处理程序 资源中包含右键...
c# 根据数据库中数据动态添加右键菜单,代码不错,可以借鉴学习一下。
为树形控件添加右键功能,用一个treeview控件和一个contextmenustrip控件实现,在contextmenustrip中编写右键菜单。
c# 根据数据库中数据动态添加右键菜单,并实现了单击功能。
C#自定义控件添加右键菜单非常简单,主要用到控件,像control定义右键菜单,用items.add()叠加右键菜单内容,用click事件处理函数。 1、control是要定义右键菜单的控件。 private void control_MouseDown(object ...
C#TreeView窗体版点击右键弹出菜单+直接修改名称+新建节点。与之前写的有所区别。可以直接在节点上进行修改!
C# 右键菜单添加与实现 右键菜单添加与实现
添加PowerPoint幻灯片右键元素时弹出的菜单
Winforn中实现ZedGraph自定义添加右键菜单项示例源码
本程序实现了为窗体添加一个右键菜单,需要的朋友请看
好久没有记录一些东西了,现整理了一点添加右键菜单到系统菜单里,并读取出所选中的文件路径,方便大家,
TreeView 通过右键菜单 实现添加,删除,修改等操作 不会弹出其他窗体 全部通过TreeView本身的功能实现 里面只有一些类 最近发现有时会出现错误 但是还是可以参考一下
用C#开发的WPS插件源码,往WPS工具栏中插入自定义菜单和往单元格右键菜单添加自定义菜单,开发环境:VS2010。
Treelist使用实例(添加右击菜单)