关联自己的应用程序到系统右键菜单

Windows2000中,当用户在“我的电脑”或“资源管理器”中的某一文件上单击鼠标右键时会出现一个快捷菜单。单击的位置和对象不同,快捷菜单的内容也不尽相同。用户可根据自己的需要定制快捷菜单中的一些内容。

假设用户希望在txt文件类型的右键快捷菜单中关联上自己的应用程序 (用户的应用程序名为mytxtapp.exe,在D盘根目录下) ,步骤如下:

1、在注册表中找到并打开HKEY_CLASSES_ROOT\.txt子键,查到其默认键值项数据为“txtfile”。

2、在注册表中找到并打开HKEY_CLASSES_ROOT\txtfile子键,在该子键的shell子键中添加一个“我的文本应用程序”子键,并将该子键的默认键值项数据设为“用我的文本程序打开”,“用我的文本程序打开”将作为新添加菜单项的名字出现在右键菜单中。双引号内的文字用户可随意设置。

3、在HKEY_CLASSES_ROOT\txtfile\shell\我的文本应用程序子键中添加一个command子键,并将command子键的默认键值项数据设为“d:\mytxtapp.exe %1”,此处设置的数据是在快捷菜单中选中相应的菜单项时执行的程序,%1表示应用程序启动时自动将当前文件装入。

[应用实例]

       VC++的应用程序向导AppWizard建立一基于对话框的程序,接受所有默认选项。

在主对话框中添加一个按钮控件,双击该按钮,接受默认名,在该按钮的消息响应函数中添加如下代码:

HKEY hresult;

CString str1,str2;

long value;

LPCTSTR dataset1="txtfile\\shell\\我的文本应用程序";

LPCTSTR dataset2="txtfile\\shell\\我的文本应用程序\\command";

str1="用我的文本程序打开";

str2="d:\\mytxtapp.exe %1";

DWORD dwPos;

//创建“我的文本应用程序”子键

value=RegCreateKeyEx(HKEY_CLASSES_ROOT,dataset1,0,NULL,REG_OPTION_NON_VOLATILE,KEY_CREATE_SUB_KEY|KEY_ALL_ACCESS,NULL,&hresult,&dwPos);

//将该子键的“默认”数据项的数据设置为“用我的文本程序打开”

       value=RegSetValueEx(hresult,NULL,0,REG_SZ,(const BYTE*)(LPCTSTR)str1,str1.GetLength());

       //创建“command”子键

value=RegCreateKeyEx(HKEY_CLASSES_ROOT,dataset2,0,NULL,REG_OPTION_NON_VOLATILE,KEY_CREATE_SUB_KEY|KEY_ALL_ACCESS,NULL,&hresult,&dwPos);

//将该子键的“默认”数据项的数据设置为用户应用程序的路径

       value=RegSetValueEx(hresult,NULL,0,REG_SZ,(const BYTE*)(LPCTSTR)str2,str2.GetLength());

::RegCloseKey(hresult);

这段代码用来关联用户的应用程序。

在主对话框中再添加一个按钮控件,双击该按钮,接受默认名,在该按钮的消息响应函数中添加如下代码:

HKEY hKey;

LPCTSTR dataset1="txtfile\\shell\\我的文本应用程序";

LPCTSTR dataset2="txtfile\\shell";

long ret1=::RegOpenKeyEx(HKEY_CLASSES_ROOT,dataset1,0,KEY_READ,&hKey);

//删除“command”子键

::RegDeleteKey(hKey,LPCTSTR("command"));

::RegCloseKey(hKey);

ret1=::RegOpenKeyEx(HKEY_CLASSES_ROOT,dataset2,0,KEY_READ,&hKey);

//删除“我的文本应用程序”子键

::RegDeleteKey(hKey,LPCTSTR("我的文本应用程序"));

::RegCloseKey(hKey);

这段代码用来恢复注册表中的默认数据。

至此,我们完成了在扩展名为.txt文件的右键菜单中关联上自己的应用程序,但不是.txt文件的右键菜单上不会出现该菜单项。如果用户希望在所有文件类型的右键菜单中关联上自己的应用程序,则应在HKEY_CLASSES_ROOT\*\shell子键下进行操作,操作步骤同上。对于关联其他类型的文件依此类推




注册表_右键菜单  

2007-07-07 20:14:13|  分类: 注册表|举报|字号 订阅

1.为任意文件夹和“开始”按钮添中加右键菜单

       HKEY_LOCAL_MACHINE\Software\CLASSES\Directory\shell

        ●重新启动计算机
      HKEY_LOCAL_MACHINE\Software\CLASSES\Directory\shell,在其下新建一个名为“Restart”的子键,然后双击右侧窗口中的“默认”,将数值设为“重新启动计算机”。接下来,在“Restart”子键下再建一个子项,命名为“command”,双击右侧窗口中的“默认”,将数值设为“C:\WINDOWS\RUNDLL.EXE USER.EXE,EXITWINDOWSEXEC”。鼠标右键单击任意文件夹或“开始”按钮,在弹出的菜单中,用户就可以选择“重新启动计算机”命令了。
        (HKEY_CLASSES_ROOT\Directory\shell分支下,创建一个新项“Reboot”,将右侧窗格中“默认”键值改为“快速重启”,并在“Reboot”下再建一个新项“Command”,修改右侧窗格中“默认”键值为“ShutDown -r -t 00”即可)

2.为文件夹添加右键选单

HKEY_CLASSES_ROOT\Folder\Shell
       HKEY_CLASSES_ROOT\Directory\shell
       HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers
       HKEY_CLASSES_ROOT\Folder\shell
       HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers

        ●命令提示符
       例如要在文件夹的右键菜单中添加“命令提示符”选项。在注册表HKEY_CLASSES_ROOT\Directory\shell分支下新建一项“CommandPrompt”,修改右侧窗格中的“默认”键值为“命令提示符”,并在该项下级再建一个新项“Command”,将右侧窗格中“默认”键值设为“cmd.exe /k cd "%1"”。现在我们就可以不需要输入长长的CD命令就切换到指定的目录了。

3.为文件添加右键选单

   3.1 在所有的文件右键菜单

       HKEY_CLASSES_ROOT\*\shell
       HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers

        ●清空回收站
      在“HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers”下新建主键“{645FF040-5081-101B-9F08-00AA002F954E}”,确定后退出注册表,当右击任何文件时,其快捷菜单都会有一个“清空回收站”的选项。

        ●用记事本打开
      在“HKEY_CLASSES_ROOT\*”下新建“shell\用写字板打开\command”子键(“用写字板打开”此键可以是任意,其下“默认”值若没填则显示此名,否则显示“默认”值中的设定,&notepad则以&后的字母作为快捷键此例为n),将command的键值设为“c:\windows\notepad.exe %1”,就会在右键菜单中出现“用写字板打开”的命令了(快捷键(N),只要在“用写字板打开”后加入“(&N)”即可)。

         ●设为隐藏属性
       “HKEY_CLASSES_ROOT\*\Shell”(如无则新建一项Shell),并在该项下级再创建一个新项“AttHide”,修改右侧窗格中“默认”键值为“设为隐藏属性”,然后在“AttHide”下级再创建一新项,命名为“Command”。在注册表HKEY_CLASSES_ROOT\*\shell\AttHide\Command右侧窗格中双击“默认”键值,弹出“编辑字符串”对话框,在“数值数据”框中输入“attrib.exe +h "%1"”(注意引号不要输入),确定后退出注册表编辑器。现在用鼠标右键单击任意一个文件,可以看到在弹出的快捷菜单中增加了一项“设为隐藏属性”,选中它就可以为该文件指定隐藏属性。

   3.2 在特定文件类型的右键菜单

          ●mp3文件的右键菜单中加入Play with winamp
       以在mp3文件的右键菜单中加入Play with winamp为例:打开“HKEY_CLASSES_ROOT\mp3_auto_file”主键;在其下新建“shell\Play with Winamp(&P)\command”,将command的键值设为“C:\Programfiles\winamp\winamp.exe %1” 。

       ΘΘ如要在MP3文件右键菜单中增加一项“用MPlayer2(Windows Medis player 6.4)播放”,具体操作如下:依次单击资源管理器“工具” “文件夹选项” “文件类型”,在已注册文件类型列表框中选中“MP3”,点击下方的“高级”按钮,在弹出的对话框中单击“新建”按钮,然后在“操作”文本框中输入“用MPlayer2播放”,在“用于执行操作的应用程序”框中输入“"C:\Program Files\Windows Media Player\mplayer2.exe" /Play "%L"”,确定后退出文件夹选项即可。

4.为所有文件和文件夹添加右键选单

      HKEY_CLASSES_ROOT\AllFilesystemObjects\Shell\

  在注册表编辑器中展开HKEY_CLASSES_ROOT\AllFilesystemObjects,然后依次新建“Shell\命令\Command”,其他操作类似前面。    
5.IE中右键的位置

      HKEY_CURRENT_USER\Software\Microsoft\InternetExplorer\MenuExt

6.驱动器类对象的右键选单

  HKEY_CLASSES_ROOT\Drive\shell

         ●激活屏保
      如要快速激活屏保,我们可以将屏保请进驱动器的右键菜单中,具体方法如下:在注册表HKEY_CLASSES_ROOT\Drive\shell分支下新建一项“LoadSCR”,修改右侧窗格的“默认”键值为“屏幕保护”,并在该项下级再创建一个新项“Command”,将右侧窗格中“默认”键值设为“C:\windows\system32\logon.scr /s "%1"”,刷新后退出注册表编辑器。这时用右键单击任意驱动器,从菜单中选择“屏幕保护”,就可以直接运行屏幕保护程序了。

7.“打开方式”菜单

      HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.txt\OpenWithList

        ●以清理avi格式文件的“打开方式”菜单为例:         HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.avi,我们可以看到下级有一子项“OpenWithList”,选中它,在右侧窗格中就可以看到AVI格式文件的“打开方式”菜单所关联的各种应用程序。选中需要清理的项目,按下“DEL”键删除,刷新后退出注册表编辑器即可。

8.“新建”菜单

      HKEY_CLASSES\ROOT\.htm\ShellNew

      在注册表编辑器展开HKEY_CLASSES\ROOT\.htm,创建一新项“ShellNew”,然后新建字符串值“NullFile”,键值为空。

         ● “发送到”菜单
      “发送到”菜单对应的是一个“SendTo”文件夹,它位于Windows XP中“C:\Documents and Settings\<用户名>”目录下,这个文件夹中的内容就是“发送到”级联菜单中的项目。
       发送到我的文档“ HKEY_CLASSES_ROOT\CLSID\{450D8FBA-AD25-11D0-98A8-0800361B1103}\shellex\ContextMenuHandlers”,在其下新建“{7BA4C740-9E81-11CF-99D3-00AA004AE837}”子键,就可以了。其下添加{61E218E0-65D3-101B-9F08-061CEAC3D50D}右键菜单中加入“查找……”
         ● 添加“在新窗口中打开”选项 
  在注册表HKEY_CLASSES_ROOT\Directory\shell分支下,创建一个新项“NewWindow”,将右侧窗格中“默认”键值改为“在新窗口中打开”,并在“NewWindow”下再建一新项“Command”,修改右侧窗格中“默认”键值为“explorer.exe %1”。  

       ● 添加“快速重启”选项 
  在注册表HKEY_CLASSES_ROOT\Directory\shell分支下,创建一个新项“Reboot”,将右侧窗格中“默认”键值改为“快速重启”,并在“Reboot”下再建一个新项“Command”,修改右侧窗格中“默认”键值为“ShutDown -r -t 00”即可。

        ● 添加“复制到”选项  
  在注册表HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers分支下,创建一新项“Copy To”,修改右侧窗格中“默认”键值为“{C2FBB630-2971-11D1-A18C-00C04FD75D13}”即可。  

        ● 添加“移动到”选项
  在注册表HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers分支下,创建一新项“Move To”,修改右侧窗格中“默认”键值为“{C2FBB631-2971-11D1-A18C-00C04FD75D13}”即可。 
  
        ● 剪切、复制、粘贴等命令的添加
     注意,我只是谈剪切、复制、粘贴等命令的添加,也就是说对右键菜单中没有这些命令的某些对象,可以添加,而对那些本来有就这些命令的对象,就连删除它们,我都无能为力。好,我现在以回收站为例,来进行剪切、复制、粘贴等命令的添加,具体地说,有“打开、剪切、复制、粘贴、重命名、删除、属性”等命令的添加。 先打开“HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}”主键,你会发现有“shellfolder”子键,在该子键下新建二进制值attributes,它的键值就决定了这些命令在右键菜单中的显示与隐藏。具体如下:
命令 键值
打开 00 00 00 20
剪切 02 00 00 00
复制 01 00 00 00
粘贴 00 01 00 00
删除 20 00 00 00
重命名 10 00 00 00
属性 40 00 00 00
如果你要显示某些命令,只需将该命令所对应的键值相加,结果作为attributes的键值即可。例如:当attributes值为00 00 00 00(默认)时,将不显示以上命令,当为73 01 00 20时,将显示所有的命令。现在好了,可以将“回收站“改为你所想改的名称了,还可以将“废物”粘贴到回收站了(不过我看这倒没有多大的作用,是吗?)      

       ● 禁止右键单击“开始”弹出的菜单
     在“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer”下新建键值“NoTrayContextMenu”,赋值为“1”,这样在“开始”按钮上单击右键时就不会出现快捷菜单。

       ● 汉化右键菜单
     比如安装了网络蚂蚁后,当用户浏览网页时如果单击鼠标右键,会发现在菜单中多了“Download All by NetAnts”,感到它和其他的中文选项有点不谐调。汉化它的办法是:打开注册表编辑器,定位到“HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\Download &&All by NetAnts”,再用鼠标右键单击“Download &&All by NetAnts”子键,在出现的快捷菜单中选择“重命名”,则“Download &&All by NetAnts”子键即变为可编辑状态,此时可将其修改为“全部由网络蚂蚁下载”,回车后,重新启动浏览器,汉化内容生效。

       ● 清理卸载残留
      有时我们正常卸载某个应用程序后,在右键菜单中仍会遗留下一些不再需要的项目,同样需要将其删除。这些遗留项目一般都存放在“HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers”;如果是只对文件夹有效的项目,则存放在“HKEY_CLASSES_ROOT\Directory\shell”和“HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers”,有时在“HKEY_CLASSES_ROOT\Folder\shell”和“HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers”也有,找到后将他们删除即可。

9.注册表中EXE文件关联项

HKEY_LOCAL_MACHINE\Software\CLASSES\exefile\shell\open\command

默认项的键值改为:

"%1" %*

即可

   ● 此类问题可以把“.exe”改成“.com”或“.scr”

还可以在命令行中运行:

ftype exefile="%1" %* 
assoc .exe=exefile

来修复。

http://chline.bokee.com/2344646.html
http://lwl555.51.net/wendang/youjian.html
http://www.iyit.net/Html/czxt/xtyhjq/200610190109248258.html
http://www.iyit.net/Html/czxt/xtyhjq/200610190055249786.html


注册表修改右键菜单 



在Windows 系统中,只要对着桌面或是文件(夹)单击右键,就会弹出一个快捷菜单,里面有对该文件(夹)的一些常用操作命令,通过右键菜单,可以方便用户对文件的某些操作。不知道你是否对它感兴趣?是否想对它作一番改头换面,做出有自己特色的右键菜单?不用着急,看完本文的大揭密,你将成为这方面的高手! 


修改右键菜单应该在注册表中,具体的说,是在HKEY_CLASSES_ROOT根键下(这里可是右键菜单中所有命令的根源哦!)。展开该根键,其下的子键主要有两种:扩展名键(.+扩展名)和类定义键(如图1)。一般地说,只要是在windows系统中已注册过的扩展名,在 HKEY_CLASSES_ROOT下均有“•该扩展名”子键 
,记录该扩展名的一些信息,对某种特定类型的文件的右键菜单的修改,便是在该键或“扩展名file”键下的操作。 

1、在所有的文件右键菜单中加入命令 

如果你的系统上安装有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),只要在“用写字板打开”后加入“(&amp;N)”即可。 

2、在特定文件类型的右键菜单中加入命令 
刚才说到了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(&amp;P)\command”,将command的键值设为“C:\Program 
files\winamp\winamp.exe %1” 。 
说明:当有多个软件可以播放mp3文件时,我们可以在右键菜单中添加多条命令,如加入“Play 
with 
Unreal”等命令,但是我们如何将某一条命令定义为默认操作(即右键菜单中的黑体命令)呢? 
你一定会说,很简单的事情吗!将mouse移向一mp3文件,在按右键的同时按shift,在右键菜单中选“打开方式“便可更改,但是这是错误的,不信你试试看,这样只有在右键菜单中选“打开”时才会用你所选择的程序来打开它,否则,它仍旧一如继往。因为它的默认操作不是“打开“这条命令。真正的方法是将 shell的默认键值改为你所想执行的命令,例如将shell的键值改为“Winamp”,效果如图3所示。 
还有,不知道你发现了没有,我在前面的例子中用的是“Play with 
Winamp”命令,而在这里用的是“Winamp”,是不是有点不对应呢?说到这里,真是让我心酸,本来我在txt文档中用shell进行默认操作的转换时(转换open与print)挺成功的,但是一转换“Play 
with Winamp”与“Play with 
Unreal”便失败,总是转换不过来,最后才明白这可能是“瘟酒吧”的一个bug,它要求转换时主键的键名为单个字符串时才有效。对汉字与英文的组合也有效,不过中间可不能有空格(不知道这是否与我的Win98是D版有关?)。 

如果你认为上面的方法不太方便且过于复杂,其实在Windows中还提供了不用操作注册表的更为方便安全的方法:打开一个文件夹,选“查看/文件夹选项/文件类型”, 
在这里你将会找到所有已经注册的文件类型,选择“mp3文件/编辑”,看到操作下面的“新建”、“编辑”、“删除”、“设为默认值”这四个按钮没有?不用我再教你了吧!嘿嘿。 

3、在所有的文件夹右键菜单中加入命令 
如果你用过Acdsee这个软件,就会发现在文件夹的右键菜单中总有“Browse with 
acdsee”这一命令,同类的还有Pc-cillin中的Trend Pc-cillin 98命令,下面再该类命令的添加方法: 

(1).打开“HKEY_CLASSES_ROOT\diretory\shell”主键; 

(2).在其下新建“命令\command”……下面不用再说了吧! 
说明:1.如果你细心一下的话,你将会发现其实在驱动器的右键菜单中,也有“Browse 
with acdsee” “Trend 
Pc-cillin98”等命令,驱动器也是特殊的文件夹,但是通过上面的方法是无法在驱动器的右键菜单中加入命令的。如果要在其中加入命令,须对“HKEY_CLASSES_ROOT\drive\shell”主键进行操作; 

(3).在“HKEY_CLASSES_ROOT”主键下还有一个folder子键,顾名思义,对它的操作将影响所有的文件夹,包括回收站,切记切记!(图4是在回收站中添加了“Browse 
with acdsee”命令) 

4、在所有的文件与文件夹的右键菜单中加入命令 
如果你自己开发了一个程序,它的操作对象是文件和文件夹,因此你想在所有的文件和文件夹的右键菜单中加入特定的命令进行操作,这就得看下面的了。 
打开“HKEY_CLASSES_ROOT\AllFilesystemObjects”主键,在其下新建“shell\命令\command”,以下操作同前。 

需要指出的是这只是一种解决方法,如果大家看我所抓下的图,会发现总有一个“IconView”命令,出现在所有的文件和文件夹的右键菜单中,但是这可不是用这种方法形成的,不妨作一下对比(如图5),这条命令是通过该软件中的应用程序扩展库iv_shext.dll扩展而来,因此它出现在右键菜单的中部。而不是在顶部 
。(什么?让我讲一下这种方法?)由于这种方法涉及到编程方面的内容,限于篇幅和主题,我就不讲这种方法了(嘘!小声点,其实我也是不会。) 

5、一些特殊命令的添加与删除 

(1).资源管理器 
在Windows 系统中,普通文件夹、驱动器、回收站等的右键菜单中都有“资源管理器“命令,如果你只想在驱动器中保留该命令,可以先在 “HKEY_CLASSES_ROOT\folder\shell”主键中删除explore子键,然后在“HKEY_CLASSES_ROOT\ drive\shell”主键中新建“explore\command”子键,令commmand的键值为“C:\WINDOWS\ Explorer.exe/e,/idlist,%I,%L”怎么样,成功了吧! 


(2).清空回收站 
在Windows系统中,只有在回收站的右键菜单中才有“清空回收站”的命令,是不是太不方便了呢,好,我们可以经过一番改造,让所有的文件菜单中都有“清空回收站”的命令,follow 
me! 
我们的思路是先找出“清空回收站”这个命令的来源,然后将其照搬到“HKEY_CLASSES_ROOT\*”下即可。好,还是先来找吧,我找呀找,终于找到了!(图6)——再教你一招,就是一些特殊的命令(特别是第三方提供的软件),都是由应用程序扩展库(.DLL)扩展而来,在注册表的“shellex \ContextMenuHandlers”中便能找到它的痕迹。 
我们打开“HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E} 
\shellex\ContextMenuHandlers”,可以发现其下有一名为“{645FF040-5081-101B-9F08-00AA002F954E}”的子键,这就是“清空回收站”命令的根源了。 
找到了根源,就容易多了,在“HKEY_CLASSES\ROOT\*\shellex\ContextMenuHandlers”下新建一键名为“{645FF040-5081-101B-9F08-00AA002F954E}”的子键,怎么样,够酷吧! 


(3).新建命令的子命令的添加与删除 
不知道有没有遇到这种情况:你经常自己手工编写网页,在单位的机器上的新建命令中有“新建html文档”的命令,但是你的机器上却没有,还有,随着各种软件的不断增加,你的新建命令弹出子命令的时间越来越长,够呛的吧! 
不要紧,不用急,让我来帮你把该出来的叫出来,不该来的让它回去! 
打开“HKEY_CLASSES\ROOT\.htm”,添加一主键shellnew,然后新建字符串值NullFile 
,键值为空,你现在再对桌面点右键,看看新建,是不是多了一点什么? 至于删除,想各位不致让我多说了吧! 

(4).剪切、复制、粘贴等命令的添加 
注意,我只是谈剪切、复制、粘贴等命令的添加,也就是说对右键菜单中没有这些命令的某些对象,可以添加,而对那些本来有就这些命令的对象,就连删除它们,我都无能为力。 
好,我现在以回收站为例,来进行剪切、复制、粘贴等命令的添加,具体地说,有“打开、剪切、复制、粘贴、重命名、删除、属性”等命令的添加。 
先打开“HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}”主键,你会发现有“shellfolder”子键,在该子键下新建二进制值attributes,它的键值就决定了这些命令在右键菜单中的显示与隐藏。具体如下: 
命令 
键值 
打开 00 00 00 20 
剪切 02 00 00 00 
复制 01 00 00 00 
粘贴 00 01 00 00 
删除 
20 00 00 00 
重命名 10 00 00 00 
属性 40 00 00 
00 
如果你要显示某些命令,只需将该命令所对应的键值相加,结果作为attributes的键值即可。例如:当attributes值为00 00 00 
00(默认)时,将不显示以上命令,当为73 01 00 
20时,将显示所有的命令(如图7)。现在好了,可以将“回收站“改为你所想改的名称了,还可以将“废物”粘贴到回收站了(不过我看这倒没有多大的作用,是吗?) 


(5).“发送到”及其菜单 
有的文件夹(如我的文档)的右键菜单中没有“发送到”这条命令,我们可以给它添加上去,方法可以参考“清空回收站”命令的添加方法。就是打开“ 
HKEY_CLASSES_ROOT \CLSID\{450D8FBA-AD25-11D0-98A8-0800361B1103}\shellex\ ContextMenuHandlers”,在其下新建“{7BA4C740-9E81-11CF-99D3-00AA004AE837}”子键,就可以了。 

至于“发送到“的菜单,是不需要在注册表中对其进行操作的,它的根源是“C:\windows\SendTo”这个文件夹,你只需在这个文件夹内新建一个快捷方式,让它指向你所想要发送到的文件夹,就OK了(如图8,其中backup,software为新建的指向文件夹的快捷方式)。 

(6).查找 

在Windows系统中,普通文件夹及驱动器的右键菜单中有“查找……”这条命令,如果我们要在回收站中寻找误删除的文件,而此时回收站中的文件又多的话,我们就可以在回收站的右键菜单中加入“查找……”这条命令。具体方法可以参考 2,5。只是需要新建的子键为“{61E218E0-65D3-101B-9F08-061CEAC3D50D}”。只不过命令变成了“文件或文件夹……”(如图9) 
讲了这么多,你现在应该懂如何修改右键菜单了吧?以上所讲均在Windows98中文版下通过。最后祝大家都能把自己的右键菜单改得别具一格,得心应手!! 


二、轻松修改鼠标右键菜单 
操作过Windows 
95/98的朋友们一定知道,通过使用鼠标右键的弹出菜单能简化许多操作,如用WINZIP来压缩文件。因此它也逐渐“发福”起来,先是WINZIP,后是ACDSee,再是Norton 
AntiVirus……你是否也想对这个弹出菜单进行修改呢?希望本文能给你一些启发。 
修改文件的鼠标右键弹出菜单(以下简称弹出菜单) 
运行注册表编辑器(regedit.exe),打开“我的电脑\HKEY_CLASSES_ROOT\*\shellex\ 
ContextMenuHandler”分支。该分支下有两个主键HexWorkshopContextMenu和Winzip(笔者的电脑中装有Winzip和HexWorkshop),删去后即可发现原来文件的弹出菜单上的Hex 
edit 和Add to Zip两项不见了。当要在弹出菜单中添加一些可执行文件时(以notepad为例),可进行如下操作: 

1.在“我的电脑\HKEY_CLASSES_ROOT\*”下新建一个名为shell的主键。 

2.在“shell”下新建名为aaa(aaa即是显示于弹出菜单中的文字,这里假设用“用笔记本打开”代替)的主键。 

3.在aaa下新建名为command的主键,修改其右默认的键值为“c:\windows\notepad.exe 
%1”(%1表示该文件不带参数,而只运行笔记本程序)即可。 
4.需再添加新的菜单项重复步骤2、3即可。 
这样,在弹出菜单上就出现了“用笔记本打开”这一选项,在打开未与笔记本建立关联的文件时避免了从许多打开方式中去重复选择笔记本的麻烦,而且可以用多种方式打开同一文件而不改变该文件原来的关联(如同时用photoshop和ACDSee打开一图片),增加了文件打开方式的灵活程度。 
修改驱动器和文件夹的弹出菜单 
1.驱动器弹出菜单的修改 

(1)修改方法同上面文件的弹出菜单的修改基本一样,运行注册表编辑器,打开“我的电脑\HKEY_CLASSES_ROOT\DRIVE”,其下有三个主键DefaultIcon、shell和shellex。 
(2)打开shell可以看见find和Browse with 
ACDSee(机器上需装有ACDSee),这也是显示在弹出菜单上的文字,如将Browse with 
ACDSee 改为别的名字,如“用ACDSee浏览”时,则英文变成汉语“用ACDSee浏览”。添加菜单项同样需要在shell下添加新主键,删除菜单项则只要删除对应的主键,如删HexWorkshop,则删去shellex下的ContextMenuHandlers主键下的 HexWorkshopContextMenu主键即可。 
2.文件夹弹出菜单的修改 
文件夹弹出菜单的修改比较复杂,涉及两个主键Directory和Folder(同样位于“我的电脑\HKEY_ 
CLASSES_ROOT \”下)的修改。其中修改Folder主键后对驱动器弹出菜单也有影响(修改Drive主键不会影响其他),如在Folder\Shell主键下添加新主键(设名为aaaa),则同时会在驱动器和文件夹弹出菜单中出现aaaa这一项,删除也同样会对两者产生影响,如删除Folder\Shell下的 explore和open主键,两者弹出菜单的资源管理器和打开两项就会消失。要删除驱动器弹出菜单的winzip项,则删去Folder\ Shellex\Context 
MenuHandlers下的winzip主键即可。而删除文件夹弹出菜单的winzip项,还要删去 Directory\Shellex\ContextMenuHandlers下的winzip主键。只对文件夹弹出菜单进行增删,需对 Directory操作就行了(操作主键Directory不会影响驱动器的弹出菜单)。如删去查找菜单项,只需去掉Directory\Shell下的 find主键,添加则在Shell下添新主键。 
3.从“文件夹选项”中修改 
这种方法比较简单,类似对文件建立关联,方法如下: 

(1)双击“我的电脑”,打开“查看/文件夹选项”(对于Windows98,还可以单击“开始/设置/文件夹选项”)。 

(2)单击“文件类型”标签,从中选中“驱动器”,然后按“编辑”按钮。 

(3)在随后的编辑文件类型对话框中,按“新建”按钮,在弹出的新操作对话框中输入一个名字(即弹出菜单上的文字),在用于操作的应用程序文本框中输入应用程序名(也可用浏览来寻找),完成后按“确定”即可。 
修改文件夹的步骤相同,只要选中文件夹就可以了。 

通过这些方法,你可以将自己制作的软件加入弹出菜单,能和正版软件同占一席之地是不是很有成就感。 
三、巧妙用好右键菜单 


移动和复制文件是Windows最常用的文件操作,一般都是先选中文件,然后通过鼠标右键,选择“复制”或“剪切”命令,然后打开目标文件夹,再进行“粘贴”;再者,打开并平铺两个资源管理器窗口,然后进行拖放操作,也能达到操作目的。(其实Windows的“发送到”命令,是一个非常灵活的复制命令,我们可以手动添加“发送到”对象,就可以方便的复制文件了。但是这些方法都不够灵活,或许微软意识到了这一点,在Windows 
Me/XP中增加了“复制到文件夹”和“移动到文件夹”命令。它就在资源管理器的“编辑”菜单中,不信你自己打开瞧瞧!可惜在实际应用中仍稍嫌不便。这不,笔者介绍的以下的操作方法让你把“复制到文件夹”和“移动到文件夹”命令加到右键菜单中,从而可大大方便操作。 

1、运行“注册表编辑器”(RegEdit)。 

2、在“注册表编辑器”窗口的左窗格中,依次展开“HKEY_CLASSES_ROOT\AllFilesystem 
Objects\shellex\ContextMenuHandlers”分支。 

3、右键单击“ContextMenuHandlers”,选择“新建→主键”,将新主键命名为“Copy To”。 

4、选中“Copy 
To”主键,在右窗格中,双击“默认”,此时弹出对话框的“数值数据”框中键入“{C2FBB630-2971-11D1-A18C-00C04FD75D13}”。单击“确定”按钮。 

5、单击“文件”菜单中的“退出”命令,关闭“注册表编辑器”窗口。 
增加“移动到文件夹”命令,方法步骤同上,只是在“ContextMenuHandlers”下,新建一个“Move 
To”主键,将其值设置为“{C2FBB631- 
2971-11D1-A18C-00C04FD75D13}”即可。 
现在,右键单击某一文件(夹),在系统弹出的快捷菜单中,出现“复制到文件夹”和“移动到文件夹”两个选项,点击进去试试,此时将弹出一个浏览文件夹的窗口,选择目标文件夹后,点击确定即可实现复制或移动文件的目的。 
将注册表展开到HKEY_CURRENT_ 
USER\Software\Microsoft\Internet 
Explorer\MenuExt,在IE中显示的附加右键菜单都在这里设置,常见的“网络蚂蚁”和“网际快车”点击右键下载的信息也存放在这里,只需找到显示广告的主键条目删除即可。 

©️2020 CSDN 皮肤主题: 大白 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值