Vista开发人员案例:Windows Shell开发

哎呀网 | 发布: 2008-5-10 11:31 | 作者: 佚名 | 来源: 网络转载 | 浏览次数: 5 | 评论数: 0

哎呀网 Vista资讯】本文适合程序员,适合在校志于Windows Vista开发的学生,不适合普通用户哎呀网*d|4L:h/[Vs

  简介哎呀网Gde \-@5J
哎呀网5o4F/o @n$\!_
  Windows Shell 是用以提供整个 Windows Vista 用户界面 (UI) 的容器,这些 UI 包括任务栏桌面、Windows 资源管理器以及许多对话框和界面控件。哎呀网Ne*oM2bqF!?

|$n'~7P`6|5v W,iA  在 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 蓝图”。
&[ M'oB P1Dc7l哎呀网 C|{'w%@}!D6n$M
  Windows Vista 中涉及数据和元数据的 Shell 功能包括同步管理器、Live Icon、Rich Preview 和属性处理程序。“针对控制面板开发”在 Windows SDK 中“基础知识”的“Windows Vista 管理”部分中进行讨论。有关详细信息,请参阅 MSDN Library 中的“针对控制面板开发”。哎呀网+p#z mh5} RG k$^

] \9|`Xd[,p  本文提供有关以下方面变化的信息:哎呀网l0L#A(A*x t9P
哎呀网a4fLNH,H*T
  •使用公共文件对话框开发 - 介绍如何对公共对话框进行编程实现:一般文件、文件打开和文件保存。这些对话框是 Windows Vista 中新增的。
}F'VbP}@qi哎呀网x QFv4p4v,qGjh(H
  •针对桌面窗口管理器 (DWM) 开发 - 介绍用于管理窗口在桌面上的可视布局和显示的新引擎,并引入一组新的 Shell API。哎呀网]^1R+n'Nl2mV9]
哎呀网 k:GB0\W:Inab
  •使用 Windows 资源管理器开发 - 介绍新 Windows Vista 资源管理器的体系结构以及开发人员如何充分利用其组件。“使用 Internet Explorer (IE) 开发”介绍了 IE 平台和开发人员如何利用该平台,并列出了 IE 7 中的主要变化。哎呀网V ?9c;K j?%~
哎呀网 f }0sq'Z;Wo
  •使用 Internet Explorer 开发 - 介绍了 IE 7 中 UI 和功能的主要变化,并说明了软件开发人员如何扩展 IE 和与其进行交互。哎呀网Mk7^z.N2@H

IQ6_1fT3n0h  •新增 Shell 接口 - 按类别列出 Windows Vista 新增的 Shell 接口。哎呀网mw_%Tb5Vq0JE
哎呀网Hf$G/MsY
  •新增 Shell 函数 - 提供 Windows Vista 中新增 Shell 函数的分组列表。
]!~9sVn哎呀网!i9w|K2LB
  使用公共文件对话框开发
*d{fYAWwm.x
:J;Szy?t  Windows Vista 提供了公共文件对话框的更新版本,以满足大多数开发人员的需要。它不仅功能强大,而且支持自定义和可扩展性。Windows Vista Shell 通过 IFileDialog 和相关接口提供对这些新文件对话框的访问。Windows Vista 的 .NET Framework 3.0 应用程序可以通过 Windows SDK 中的互操作性支持来访问此功能。有关详细信息,请参阅 MSDN Library 中的“互操作性和迁移”。

I \~%vW9tP

`"ZaV Jw7D"h.I  使用公共文件对话框对象

z.?-VAj?c l

0F:M Q;`(X{B  应用程序必须获取以下接口之一,才能创建公共文件对话框实例:哎呀网,d0yE7Lb,}

~ m eRI8r9]6q ?W T  •IFileDialog - 最一般的接口,是下面两个接口的父接口。哎呀网A4_^rm,z.D6|{8w

AJtb-i1l4bY  •IFileOpenDialog - 扩展 IFileDialog,使应用程序可控制特定于打开操作的某些方面(如选择多个项)。哎呀网8A[]3Fr:R W5yN5l

6Z7v&fvavUV\  •IFileSaveDialog - 处理“另存为”操作以及使用元数据。

:h%JP-ZO;L

%]d[_r"I3E"S b  所有文件对话框都是模式对话框。开发人员可以使用这些类中的方法,以获取和设置对话框的 UI 元素(如 SetTitle、SetDefaultFolder、SetFileTypes 和 GetCurrentSelection),在使用对话框时,这些元素是典型元素。通过一组位标志,可以使用 GetOptions 和 SetOptions 方法控制对话框的许多标准化行为。这些选项只能在显示对话框之前进行设置;否则,SetOptions 方法将返回错误。使用 GetResult 方法,或者在启用 FOS_ALLOWMULTISELECT 选项的情况下使用 IFileOpenDialog,可以检索最终的用户选择。哎呀网 wsva3D7a~,xbv q s

哎呀网6NkN[[ ir(F0K F4m

  处理文件对话框事件

l jr[-KT?9Ad6b

,T1AP-f1g  虽然实例化文件对话框对象可提供相应公共文件对话框的主要 UI 和功能,但是在一些客户端中,实际使用这些对话框时,要求开发人员访问由对话框操作或对话框的单个控件生成的事件。

;rFj ]A2]M哎呀网ib%WV^,QT Yq

  IFileDialogEvents 接口提供了指示用户操作的方法和可在公共文件对话框中通知事件的方法。有关处理文件对话框事件的详细信息,请参阅可下载的帮助文件(可从此处下载)。要在下载的帮助文件中查找本文,请展开 Fundamentals,再展开 Windows Shell (Windows Vista),然后展开并单击 Developing for Windows Shell。

j&A@ a _U$|

Bw#y;W ?.e.r  自定义公共文件对话框

(Hd2i!O gw

.}{{ r [ V  除了可以通过主要对话框接口和事件接口进行 UI 和行为自定义外,开发人员还可以通过所提供的 IFileDialogCustomize 接口将其他公共控件添加到该对话框的一组标准控件之上或之下。这些控件包括 PushButton、ComboBox、EditBox、CheckBox 和 RadioButtonList。有关自定义公共文件对话框的详细信息,请参阅可下载的帮助文件(可从此处下载)。要在下载的帮助文件中查找本文,请展开 Fundamentals,再展开 Windows Shell (Windows Vista),然后展开并单击 Developing for Windows Shell。

*`wu4TWO nxrx哎呀网,B#];@d$P!i:bM/?(}

  针对桌面窗口管理器 (DWM) 开发

dkCy6R6B0| ~哎呀网9o{8T0m&i1w{p

  桌面窗口管理器 (DWM) 是 Windows Vista 中的新增组件,用于管理 Windows Vista 桌面的可视布局和显示,以及协调应用程序窗口的显示。在 Windows 早期版本中,应用程序直接绘制到显示设备。DWM 先使用“桌面组合”将某个表面(如应用程序的窗口)绘制到屏幕外的缓冲区,然后再将该表面与所有其他表面组合呈现到桌面。有关针对 DWM 开发的详细信息,请参阅可下载的帮助文件。要在下载的帮助文件中查找本文,请展开 Fundamentals,再展开 Windows Shell (Windows Vista),然后展开并单击 Developing for Windows Shell。

/\W3e&l$NK8_4I_

qc-[jm `6hyw P  使用 Windows 资源管理器开发

F3B5Jj t6S/_哎呀网4HMT v!NfJLY'h Oj

  Windows Vista 中的 Windows 资源管理器是一个功能强大的资源浏览和管理应用程序。通过 Explorer.exe 或 IExplorerBrowser Shell 接口,可以将 Windows 资源管理器作为一个集成整体来访问。哎呀网i_x Xp&C R

哎呀网 w+cWSy1XSU

  使用 ShellExecuteEx 或类似的函数,可以将 Windows 资源管理器 (Explorer.exe) 作为一个单独进程生成。Microsoft 帮助和支持站点上的“Windows 资源管理器命令行选项”一文中对命令行选项进行了介绍。哎呀网n![6a0Yq8u

hzZ-f)Qt r  使用 IShellWindows/CLSID_ShellWindows 可以发现打开的资源管理器窗口并对其进行编程;使用 IWebBrowser2/CLSID_ShellBrowserWindow 可以创建 Windows 资源管理器的新实例。

8]dL!PK5~ wO%Z

f}/x"_`  在可下载的帮助文件(可从此处下载)中,可以找到介绍如何使用 Windows 资源管理器自动模型来创建和发现正在运行的资源管理器窗口的 C++ 代码示例。要在下载的帮助文件中查找本文,请展开 Fundamentals,再展开 Windows Shell (Windows Vista),然后展开并单击 Developing for Windows Shell。

.O[IAZ ETQ&L \哎呀网/Fa-VT A

  使用 IExplorerBrowser Shell 接口可以承载 Windows 资源管理器客户端区域。Windows 资源管理器客户端和命名空间树控件是 Windows Vista 的标准组件,这些接口是公共接口。因此,开发人员可以将这些接口作为构建组件重用。这些控件的一个常见用途是,创建适合于问题领域的自定义资源管理器。

N.B?+dQ$l#`3H哎呀网 {v{@@ z5L

  Windows 资源管理器中的控件按功能分为以下几类:导航控件、命令控件、属性和预览控件、筛选和视图控件以及 Listview 控件。

4ynj)l[&V

Ha6bEf/tC  导航控件

3b"s+Kjv5c[&oAa}哎呀网mDX P Mk

  导航控件可帮助用户确定上下文和导航关联的逻辑域空间(称为页面空间)。例如,Windows 资源管理器的页面空间是 Shell 命名空间。页面空间由零个或多个页面组成。哎呀网:B&Oq(IV$up,J

L#k)X5V1^z@  下表列出并说明在 Windows Vista 操作系统的 Windows 资源管理器中可用的导航控件。

D$bUq9Nd5[a n

rj8NWGOD  导航控件说明哎呀网 ud CtK H\kSdi Mu

Y$z/SHn/iy  Address Bar(Breadcrumb 控件)显示页面空间中当前页面的地址。可以单击 Breadcrumb 按钮向上导航到页面空间中的任何上级。用户仍然可以键入要导航的 URL 和路径。哎呀网,l*u5z DRa|

-Y;A TP6j M  Folder Tree提供为大型页面空间优化的新版本树控件。

/F8@+u/t*Z*ssDc

uc2w*~([  Travel允许通过 Web 样式按钮(如“后退”和“前进”)进行相对导航。哎呀网1f3{,p r6e*T Wq

哎呀网4id w#vw

  Title显示当前的资源管理器名称和上下文。

x5F!Y4]W$V

ym^|v\ VXK l*O}  Pagespace显示页面空间的当前分支。可以按不同条件对页面进行排序。用户可以单击某个页面以导航到该页面。

$]'b$tx,h哎呀网f;lKk$J-zG6o

  命令控件哎呀网u*EFu0S

9B7xx&M-}9x:x"A|;G  命令控件向用户播发资源管理器的特性和功能,它们执行常规操作或特定于一个或多个选定项的操作。哎呀网J+Dz(mm^

^]3[`B  命令控件说明哎呀网Z:wH,@[a:K&h

哎呀网n4\0?su

  Toolbar显示常用命令的按钮(新版本的命令工具栏)。自定义选项包括下拉按钮、拆分按钮、可选的说明性文字和溢出区域。

`yd+].G,zS哎呀网(P v"d v4kJ~m2x

  Hero显示为工具栏中心的可选、单一自定义控件。表示当前上下文的主要命令。哎呀网 N&Ge a+Kf+m,D

Vb k6X7o3e$nH;r `  Menu Bar通过菜单提供命令(Windows 资源管理器中的原有控件)。

YNq#[9eO哎呀网 X#dgO1q I!H3oM7[

  Context Menu列出因单击鼠标右键而显示的可用命令的上下文相关子集。

.{o:CRj fP)x哎呀网 U#MyX'do,a:k

  属性和预览控件哎呀网7boO ^/~{:FZ

#~ tj,FL cJ"j  属性和预览控件用于预览项,以及查看和编辑项属性。

2L)i9nQ*K4if+y.Xe6V哎呀网my!` a i^4js+a

  控件说明

9H%l/Tvp @7R&n%X

-T'[yV8|"bn  Preview显示选定项的预览,如缩略图或 Live Icon。

3cK!q Q5T哎呀网!o K Vo'g3D

  Properties显示选定项的属性。对于多项选择,它显示选定的一组项的属性摘要。对于空选择,它显示当前页(列表视图的内容)的属性摘要。

s5A RGL&mEBi'e3d哎呀网1[ j2v6q7[2B/`1W


若您对该文章还有其它疑问,请到问吧提出。我们会全力为您解答。本站承诺:

TAG: Vista vista Windows 开发 Shell

字号: | 推荐给好友

哎呀网加入收藏 哎呀网打印本页 哎呀网关闭窗口 哎呀网返回顶部 哎呀网进入博客 哎呀网进入论坛 哎呀网点击复制本页地址发给QQ/MSN好友
上一篇:Vista SP1在文件复制上超越XP SP2(在线视频观看)
下一篇:微软停售XP引不满 微软失去控制商业软件升级步调能力?

21/212>
 

评分:0

我来说两句

seccode

请遵守《互联网电子公告服务管理规定》及中华人民共和国其他各项有关法律法规。
严禁发表危害国家安全、损害国家利益、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容的评论。
用户需对自己在使用本站服务过程中的行为承担法律责任(直接或间接导致的),本站管理员有权保留或删除评论内容。
软件信息
最新版本:V3.0.1
发布日期:2008年10月5日
全能精灵是一款系统辅助工具,包含系统检测,系统优化,系统美化,系统清理,系统维护,IE管理,进程管理等模块,是您优化系统的好帮手。
软件信息
最新版本:V1.1
发布日期:2008年10月12日
截图精灵是一款屏幕截图软件。可轻松截取全屏,活动窗口,自定义窗口等的图像。
软件信息
最新版本:V2.1
发布日期:2008年10月5日
该工具可对文件进行MD5,CRC32的批量校验,同时支持文件拖放,您可以直接拖动文件到校验窗口。

网络推荐