用C++ Builder创建上下文菜单扩展处理器
敬业的IT人
互联网
佚名
2008-1-3 19:11:47
源码下载
当用户右击一个shell对象时,shell会显示它的上下文菜单。文件系统对象有大量的标准菜单项,如"剪切"和"拷贝",这些都是缺省的菜单项。如果对象是一个文件,是文件类的成员,就能够在注册表里指定附加的菜单项。Shell检查注册表,看看文件类型是否与一些上下文菜单handler相关联,如果是,shell会咨询这些handler是否添加额外的菜单项。
上下文菜单handler是一种shell扩展handler,它添加命令到已有的上下文菜单中。上下文菜单handler都与特定的文件类相关联,并且在显示这类文件的成员的上下文菜单时调用。通过实现和注册这样一个handler,能够动态地添加菜单项到对象的上下文菜单上,从而为特殊的对象定制菜单。
上下文菜单Handler的工作原理
作为一种shell扩展handler,上下文菜单handler同所有其它handler一样, 是进程内COM 对象,即对象作为动态连接库 (DLL)实现。除了IUnknown接口外,上下文菜单还必须导出IShellExtInit和ICborder="0" alt="用C++ Builder创建上下文菜单扩展处理器(图一)" width="554" height="293" />
注册后,在资源管理器右击任何文件,如readme.txt,都将打开一个选择文件的对话框,然后shell用选择的文件打开readme.txt。
进入讨论组讨论。- 最新文章
- 用C++进行简单的文件I/O操作[01-03]
- 编写可复用性更好的C++代码:Band对象和COMToys(..[01-03]
- C++ Builder开发经验几则[01-03]
- 编写可复用性更好的C++代码:Band对象和COMToys(..[01-03]
- 在VB中设计倒计时程序[01-03]
- 用VB函数轻松访问系统注册表[01-03]
- 相关文章
- 禁用Vista资源管理器地址栏新功能[01-03]
- Windows Vista“资源管理器停止工作”怎么办?[01-03]
- Windows Server 2008包含虚拟化技术 按处理..[01-03]
- Win2000/XP任务管理器能个性化[01-03]
- 关闭任务管理器杀不了的进程[01-03]
- Windows任务管理器开发原理与实现[01-03]
