OC2007中,有三种类型的菜单:
工具栏菜单(The Tools menu)
会话窗口的动作菜单(The Actions menu off the Conversation window)
联系人窗口右键菜单(The right-click menu off the Contact List)
在这些菜单列表中,都可以扩充我们的自定义菜单项。
在OC2007 中,扩展菜单项,比扩展web 标签页,要容易一些,只要在注册表中定义清楚菜单项的各项属性就可以正常运行。如下代码所示:
[ HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Communicator/SessionManager/Apps/{27877e66-615c-4582-ab88-0cb2ca05d951} ]
" Name " = " 发送短信 "
" ExtensibleMenu " = " ConversationWindowRightClick;MainWindowActions;MainWindowRightClick;ConversationWindowActions;ConversationWindowContextual "
" Path " = " E://群发邮件//SendNote//SendNote.exe %user-id% %contact-id% "
" ApplicationInstallPath " = " E://群发邮件//SendNote//SendNote.exe "
" SessionType " = dword: 00000000
" ApplicationType " = dword: 00000000
各注册键说明如下:
Name | Type | Data |
Name | REG_SZ | 菜单命令名称 |
ApplicationType | DWORD | 应用程序类型:0:可执行文件;1:协议 |
ApplicationInstallPath | REG_SZ | 当 ApplicationType = 0 时,应用程序的完整路径 |
Path | REG_SZ | 应用程序的完整路径及其参数,缺省参数 %user-id% 和%contact-id%. |
SessionType | DWORD | 会话类型。 |
ExtensibleMenu | REG_SZ | 应用程序将会在哪些菜单上显示: 多个菜单项目之间用分号(“;”)分隔。 |
菜单说明
键名称(Key) | 说明 |
MainWindowActions | 主窗口菜单的[工具]工菜单下 |
MainWindowRightClick | OC主窗口联系人[右键]菜单 |
ConversationWindowActions | 对话窗口菜单的[操作]菜单下 |
ConversationWindowContextual | 对话窗口的[发送文件]菜单 |
ConversationWindowRightClick | 对话窗口,联系人列表[右键]菜单 |
定义完成后,重启OC,就可以达到如图所示的效果了。