如何在系统的右健菜单或ie的右键菜单中加入自己的菜单项(100分)

  • 主题发起人 主题发起人 yyjj
  • 开始时间 开始时间
可以通过修改注册表实现:

因为在不同的地方,右见菜单的内容不相同,所以修改的位置也不同,但原理相同
举个例子,其它的自己去找 例如:
定制右击“开始菜单”和“我的电脑”出现的菜单项:
①添加文件夹的快捷方式(如:我的文件夹(“My Documents)”)
运行注册表编辑器(regedit.exe),在编辑菜单中选择查找命令,查找Directory
主键,找到‘HKEY_CLASSES_ROOT/Directory/shell/’主键,在它下面新建
主键’myitem1’(名称自定),默认值设为: “我的文件夹”(将来出现在右击
菜单中的文字),然后在主键’myitem1’下新建主键‘command’(名称不能为
其它值),其默认值设为:“explorer.exe c:/My Documents”。(该命令的意思
是用资源管理器浏览c:/My Documents文件夹的内容.)

②添加应用程序的快捷方式(如:Word)
运行注册表编辑器(regedit.exe),在编辑菜单中选择查找命令,查找Directory
主键,找到‘HKEY_CLASSES_ROOT/Directory/shell/’主键,在它下面新建
主键’myitem2’(名称自定),默认值: Word(将来出现在右击菜单中的文字),
然后在主键’myitem2’下新建主键‘command’(名称不能为其它值),其默认值
设为:"C:/Program Files/Microsoft Office/Office/WINWORD.EXE"。
(该命令的意思是启动应用程序:
C:/Program Files/Microsoft Office/Office/WINWORD.EXE.)

③添加命令(如:关机)
运行注册表编辑器(regedit.exe),在编辑菜单中选择查找命令,查找
Directory主键,找到‘HKEY_CLASSES_ROOT/Directory/shell/’主键,
在它下面新建主键’myitem3’(名称自定),默认值: “关闭计算机”
(将来出现在右击菜单中的文字),然后在主键’myitem3’下新建主键
‘command’(名称不能为其它值),其默认值设为:“Rundll32.exe
User.exe,ExitWindows”。(该命令的意思是关闭计算机.)

上面的方法添加的是右击“开始菜单”(其实是任一文件夹)出现的内容,
要定制右击“我的电脑”或“网上邻居”出现的内容,上面新建主键的位置
变一下即可.
 
这类问题太多了,为什么不先看看已答问题呢??
 
好象不全是这个意思吧???
 
to cakk:告诉我在什么地方?
to charles:ie中一样吗?等我试试
 
研究了一下IE编程,确实大有学问:
把自己的菜单添加到IE的右键菜单里面去(注意,不是"资源管理器"菜单哦):
步骤如下:

-打开注册表编辑器
-建立主键
HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer/MenuExt
再建立主键
HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer/MenuExt/My New Menu
其中"My new Menu"改成你要显示在菜单中的名字
-修改该主键的"默认"值为......(此处删去2000字)

哈哈,开个玩笑,省略号部分我还没搞懂,书上说"默认"值修改为你要通过该菜单
执行的URL,一般也就是一个Javascript文件, IE会把必要的参数传给你.

但是我希望最好能够直接执行一个exe文件,所以我把"默认"值指向一个exe文件,
结果好像没有反应....还得继续试验!!
 
BTW;修改后,只有重新打开IE才能看到菜单.
 
cAKK:IE传的必要参数到底是什么?
 
This script can obtain the parent <font color=red>window</font> object, the screen where
the context menu item was executed, from the<font color=red> menuArguments</font> property
of the<font color=red> external</font> object.
 
charles的修改办法我用过
可以实现的
 
thtfsyh:看清楚题目,是IE里面的菜单,不是"资源管理器"的菜单!!!
 
不知大家注意没有NETANTS就是这样实现的,它用了一个NAGET.HTM的文件,在NETANTS主目录下,有人研究出来了吗?
 
呵呵,早就研究出来了,不过我现在还不知道能利用这个干什么.
 
NetAnts不是就用上了吗?多方便
 
你的意思是我也编一个netants?
 
多人接受答案了。
 
不满意不满意,我觉得应该搞清楚IE是怎么和外部程序互相传递参数的。NETANTS好象专门动用了一个DLL库。那个NAGET.HTM是关键。不过我还是没有搞动,可能用VC++的容易搞懂些。在比如网易的NETBAND不就是内嵌入IE了吗?
 
后退
顶部