IShellWindows 接口 (exdisp.h)
提供对打开的 Shell 窗口集合的访问。
继承
IShellWindows 接口继承自 IDispatch 接口。 IShellWindows 还具有以下类型的成员:
方法
IShellWindows 接口包含以下方法。
IShellWindows::_NewEnum 检索 Shell 窗口集合的枚举器。 |
IShellWindows::FindWindowSW 在 Shell 窗口集合中查找一个窗口,并返回该窗口的句柄和 IDispatch 接口。 |
IShellWindows::get_Count 获取 Shell 窗口集合中的窗口数。 |
IShellWindows::Item 返回指定索引的已注册 Shell 窗口。 |
IShellWindows::OnActivated 在 Shell 窗口的激活状态更改时发生。 |
IShellWindows::OnCreated 在为框架创建新的 Shell 窗口时发生。 |
IShellWindows::OnNavigate 在 Shell 窗口导航到新位置时发生。 |
IShellWindows::P rocessAttachDetach 已弃用。 始终返回 S_OK。 |
IShellWindows::Register 将打开的窗口注册为 Shell 窗口;窗口由句柄指定。 |
IShellWindows::RegisterPending 将挂起的窗口注册为 Shell 窗口;窗口由绝对 PIDL 指定。 |
IShellWindows::Revoke 撤销 Shell 窗口的注册,并从 Shell 窗口集合中删除该窗口。 |
注解
Shell 窗口是通过调用 IShellWindows::Register 或 IShellWindows::RegisterPending 注册的窗口。 注册后,指定的窗口将添加到 Shell 窗口的集合中,并授予一个唯一标识集合中窗口的 Cookie。 可以通过调用 IShellWindows::Revoke 取消注册窗口。
Shell Windows 集合包括文件资源管理器窗口和 Web 浏览器窗口 Internet Explorer 和第三方 Web 浏览器) 。 通常每个 Shell 窗口都实现 IDispatch; IShellWindows::Item 和 IShellWindows::FindWindowSW 提供了访问 Shell 窗口的 IDispatch 接口的方法。 有关详细信息,请参阅 Dispatch Interface and Automation Functions。
IID | IID_IShellWindows (85CB6900-4D95-11CF-960C-0080C7F4EE85) |
---|---|
CLSID | CLSID_ShellWindows (9BA05972-F6A8-11CF-A442-00A0C90A8F39) |
以下示例演示如何检索 IShellWindows 实例。
#include "exdisp.h"
...
IShellWindows *psw;
HRESULT hr;
hr = CoInitialize(NULL);
if (SUCCEEDED(hr))
{
hr = CoCreateInstance(
CLSID_ShellWindows,
NULL,
CLSCTX_ALL,
IID_IShellWindows,
(void**)&psw
);
if (SUCCEEDED(hr))
{
// Use the IShellWindows instance...
psw->Release();
}
}
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | exdisp.h |