如何添加 菜单项 到另外的软件中去?(0分)

  • 主题发起人 主题发起人 bigwu
  • 开始时间 开始时间
B

bigwu

Unregistered / Unconfirmed
GUEST, unregistred user!
; 如何添加 菜单项 到另外的软件中去?
象winzip, 瑞星杀毒等可将在 windows 9x的Explorer 中PopupMenu菜单(在Explorer
的文件夹栏右击时显示)添加 一个菜单项 来连接自身; 有如Netants,3721等软件能在
IE 的MainMenu/PopupMenu中添加菜单项? 请问其原理?
如何得到相关的详细资料?
 
用以下api函数试试吧!
AppendMenu
CreateMenu
GetMenu

InsertMenu
InsertMenuItem
SetMenu
SetMenuDefaultItem
SetMenuItemBitmaps
SetMenuItemInfo
 
在文件夹里的PopupMenu项是Shell API
Delphi 有例子DEMOS/ACTIVEX/SHELLEXT
 
供参考:
{—————————————————————————————————————
名称:SetRegForContextMenu
参数:extname
说明:使得扩展名为extname的文件在windows总的右键菜单中增加一项:
'设置为负荷监控远程查询的背景音乐'
windows注册表中HKEY_CLASSES_ROOT记录了文件关联信息
每一种扩展名都有相应的键值,其键值记录了某个关联
这个关联同样记录在HKEY_CLASSES_ROOT中
在这个关联的中的shell中记录了右键菜单,所有键值都被显示
在下一层的command中记录了运行的程序
返回值:无
编写人:简亮 时间:99-12-22
—————————————————————————————————————}
procedure SetRegForContextMenu(extname: string);
var
Reg: TRegistry;
contextname: string;
begin
reg := TRegistry.Create;
with reg do
begin
RootKey := HKEY_CLASSES_ROOT;
OpenKey(extname, True);
contextName := ReadString('');
if contextName = '' then
begin
WriteString('', 'yccxBackMuisc');
contextName := 'yccxBackMuisc';
end
else
begin
CloseKey;
OpenKey(ContextName + '/shell/设置为负荷监控远程查询的背景音乐/command', True);
WriteString('', '//llp/mllj/client.exe %1');
end;
Free;
end;
end;
 
设置注册表
 
接受答案了.
 
后退
顶部