Windows 2000 UI 新特点之三:搜索管理器

xieanq

xieanq

2016-01-29 11:50

Windows 2000 UI 新特点之三:搜索管理器,Windows 2000 UI 新特点之三:搜索管理器

Windows 2000 UI 新特点之三:搜索管理器

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/cyuyanjiaocheng/)

原文参见:MSDN Magazine March 2000


编译/赵湘宁

第一部分 Windows 2000 UI 新特点之一:信息条提示(Infotip)
第二部分 Windows 2000 UI 新特点之二:自定义文件夹栏目

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/cyuyanjiaocheng/) 本文源代码


摘要:本文是关于Windows 2000 UI 新特点系列文章的第三篇,将创建一个简单的对象搜索管理器扩展(Search Handler)。
    搜索处理是与外壳的用户接口集成在一起的一个模块,允许您查找对象,如:文件、打印机、网络计算机和消息等。从"开始"菜单进入"搜索"子菜单(在以前的Windows版本中,这个菜单叫做"Find"或“查找”,现在为"Search"或“搜索”),可以进入对象的搜索处理。在Windows 2000 之前,资源浏览器的"工具"菜单中包含着一个相同的子菜单副本,对这种功能提供了一种可选择的访问方式。
   到了Windows 2000,资源浏览器通过一个联合对象实现其自己搜索面板。想要添加自己的搜索面板,必须自己编写一个新的联合对象。关于联合对象描述将在另外的文章中专门来讨论,这里只是提出这个概念和方法。新的搜索面板完全基于DHTML,并且完全代替了Windows 2000 以前的"查找(Find)"对话框。您可以使用与在Windows 9x 或 Windows NT下相同的方法和代码来运行它:
        ShellExecute(NULL, "find", NULL, NULL, NULL, 0);  
    上面的代码只是运行“搜索”功能,要想在"搜索"菜单中增加一个新的菜单项,那完全是另外一回事,“搜索”菜单读取注册表下列路径入口:
HKLM  SOFTWARE    Microsoft      Windows        CurrentVersion          Explorer            FindExtensions
    有两种类型的菜单项:静态和动态。静态菜单项只有在需要时被加载,而动态扩展被绑定到外壳的生命周期中,它在外壳启动时被加载,在外壳进程结束时被终止。一般情况下,只需要写一个静态扩展。动态扩展必须要在上面所述的节点处注册。静态扩展必须在一个叫做"Static"的公共键下被分组,被放在"FindExtensions"下。
什么是搜索处理器呢?它是一个非常简单的上下文菜单外壳扩展类型。为了编写一个搜索处理器,只要写一个上下文菜单外壳扩展的框架即可。也就是说,您必须实现IContextMenu 和IShellExtInit。ICcontextMenu 暴露三个函数:第一个是QueryContextMenu,用于增加一个或更多的菜单项;第二个是GetCommandString,为用于提供描述;第三个是InvokeCommand,负责执行代码响应用户的点击。对一个搜索处理器而言,只需要InvokeCommand,其它两个函数可以忽略。

图九 使用 Find Process 搜索管理器

    图九是一个"Find Process"搜索处理器的运行时例子。Windows 2000也支持ToolHelp API来获得关于运行进程和模块的系统信息。Windows 9x支持ToolHelp,但Windows NT 4.0不支持ToolHelp(Windows NT 4.0中使用另外一个API:PSAPI)。详细信息请参考本文源代码。

展开更多 50%)
分享

猜你喜欢

Windows 2000 UI 新特点之三:搜索管理器

C语言教程 C语言函数
Windows 2000 UI 新特点之三:搜索管理器

Windows 2000 UI 新特点之一:信息条提示(Infotip)

C语言教程 C语言函数
Windows 2000 UI 新特点之一:信息条提示(Infotip)

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Windows 2000 UI 新特点之四:其他类型的外壳扩展

C语言教程 C语言函数
Windows 2000 UI 新特点之四:其他类型的外壳扩展

Windows 2000 UI 新特点之二:自定义文件夹栏目

C语言教程 C语言函数
Windows 2000 UI 新特点之二:自定义文件夹栏目

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Windows 7游戏管理器

电脑入门
Windows 7游戏管理器

Windows 8玩转任务管理器

电脑入门
Windows 8玩转任务管理器

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

个人考勤软件开发实例

个人考勤软件开发实例

HTML组件(HTML COMPONENTS)之一

HTML组件(HTML COMPONENTS)之一
下拉加载更多内容 ↓