- Vista SP1 安装Vista SP1后遇到声音问题的解决方案 Windows Vista Service Pack 1最新版本语言包公布
- Vista应用 Vista下IIS的http 500 错误和 'ASP 0131'错误 关于Vista下应用程序初始化失败和内存不能read
- Vista问答 Windows Vista系统安装常见的8个问题 Vista中播放视频出现混合音问题的解决方法
- Vista评测 Vista SP1 DirectX 10.1游戏性能测试 Windows Vista SP1新变化全方位解析
- Vista教程 小知识:硬盘的读写原理和磁盘碎片的产生 关于Windows Vista下局域网文件共享的注意事项
简介
Windows Shell 是用以提供整个 Windows Vista 用户界面 (UI) 的容器,这些 UI 包括任务栏、桌面、Windows 资源管理器以及许多对话框和界面控件。
在 Microsoft Windows 3.0 版中,原始 Shell 是以具有相应 API 的本机 Win16 DLL 形式实现的。它具有多个重叠窗口以及用于浏览和管理文件系统的程序管理器。在 Microsoft Windows 95 中,已具有许多 UI 改进、一个新的 Windows 资源管理器以及一个基于 COM 的新平台和相应 API。Microsoft Internet Explorer 版本 3 添加了 Internet 快捷键和浏览器扩展。Windows 和 Internet Explorer 的每个后续版本都产生了一些其他功能以及 Win32 和 COM API 的相应扩展。Shell 的运行库是通过许多动态链接库 (DLL) 分发的。有关详细信息,请参阅 Windows 软件开发工具包 (SDK) 中的“Windows Shell 蓝图”。
Windows Vista 中涉及数据和元数据的 Shell 功能包括同步管理器、Live Icon、Rich Preview 和属性处理程序。“针对控制面板开发”在 Windows SDK 中“基础知识”的“Windows Vista 管理”部分中进行讨论。有关详细信息,请参阅 MSDN Library 中的“针对控制面板开发”。
本文提供有关以下方面变化的信息:
•使用公共文件对话框开发 - 介绍如何对公共对话框进行编程实现:一般文件、文件打开和文件保存。这些对话框是 Windows Vista 中新增的。
•针对桌面窗口管理器 (DWM) 开发 - 介绍用于管理窗口在桌面上的可视布局和显示的新引擎,并引入一组新的 Shell API。
•使用 Windows 资源管理器开发 - 介绍新 Windows Vista 资源管理器的体系结构以及开发人员如何充分利用其组件。“使用 Internet Explorer (IE) 开发”介绍了 IE 平台和开发人员如何利用该平台,并列出了 IE 7 中的主要变化。
•使用 Internet Explorer 开发 - 介绍了 IE 7 中 UI 和功能的主要变化,并说明了软件开发人员如何扩展 IE 和与其进行交互。
•新增 Shell 接口 - 按类别列出 Windows Vista 新增的 Shell 接口。
•新增 Shell 函数 - 提供 Windows Vista 中新增 Shell 函数的分组列表。
使用公共文件对话框开发
Windows Vista 提供了公共文件对话框的更新版本,以满足大多数开发人员的需要。它不仅功能强大,而且支持自定义和可扩展性。Windows Vista Shell 通过 IFileDialog 和相关接口提供对这些新文件对话框的访问。Windows Vista 的 .NET Framework 3.0 应用程序可以通过 Windows SDK 中的互操作性支持来访问此功能。有关详细信息,请参阅 MSDN Library 中的“互操作性和迁移”。
使用公共文件对话框对象
应用程序必须获取以下接口之一,才能创建公共文件对话框实例:
•IFileDialog - 最一般的接口,是下面两个接口的父接口。
•IFileOpenDialog - 扩展 IFileDialog,使应用程序可控制特定于打开操作的某些方面(如选择多个项)。
•IFileSaveDialog - 处理“另存为”操作以及使用元数据。
所有文件对话框都是模式对话框。开发人员可以使用这些类中的方法,以获取和设置对话框的 UI 元素(如 SetTitle、SetDefaultFolder、SetFileTypes 和 GetCurrentSelection),在使用对话框时,这些元素是典型元素。通过一组位标志,可以使用 GetOptions 和 SetOptions 方法控制对话框的许多标准化行为。这些选项只能在显示对话框之前进行设置;否则,SetOptions 方法将返回错误。使用 GetResult 方法,或者在启用 FOS_ALLOWMULTISELECT 选项的情况下使用 IFileOpenDialog,可以检索最终的用户选择。
处理文件对话框事件
虽然实例化文件对话框对象可提供相应公共文件对话框的主要 UI 和功能,但是在一些客户端中,实际使用这些对话框时,要求开发人员访问由对话框操作或对话框的单个控件生成的事件。
IFileDialogEvents 接口提供了指示用户操作的方法和可在公共文件对话框中通知事件的方法。有关处理文件对话框事件的详细信息,请参阅可下载的帮助文件(可从此处下载)。要在下载的帮助文件中查找本文,请展开 Fundamentals,再展开 Windows Shell (Windows Vista),然后展开并单击 Developing for Windows Shell。
自定义公共文件对话框
除了可以通过主要对话框接口和事件接口进行 UI 和行为自定义外,开发人员还可以通过所提供的 IFileDialogCustomize 接口将其他公共控件添加到该对话框的一组标准控件之上或之下。这些控件包括 PushButton、ComboBox、EditBox、CheckBox 和 RadioButtonList。有关自定义公共文件对话框的详细信息,请参阅可下载的帮助文件(可从此处下载)。要在下载的帮助文件中查找本文,请展开 Fundamentals,再展开 Windows Shell (Windows Vista),然后展开并单击 Developing for Windows Shell。
针对桌面窗口管理器 (DWM) 开发
桌面窗口管理器 (DWM) 是 Windows Vista 中的新增组件,用于管理 Windows Vista 桌面的可视布局和显示,以及协调应用程序窗口的显示。在 Windows 早期版本中,应用程序直接绘制到显示设备。DWM 先使用“桌面组合”将某个表面(如应用程序的窗口)绘制到屏幕外的缓冲区,然后再将该表面与所有其他表面组合呈现到桌面。有关针对 DWM 开发的详细信息,请参阅可下载的帮助文件。要在下载的帮助文件中查找本文,请展开 Fundamentals,再展开 Windows Shell (Windows Vista),然后展开并单击 Developing for Windows Shell。
