Interfaz IShellWindows (exdisp.h)

Proporciona acceso a la colección de ventanas de Shell abiertas.

Herencia

La interfaz IShellWindows hereda de la interfaz IDispatch . IShellWindows también tiene estos tipos de miembros:

Métodos

La interfaz IShellWindows tiene estos métodos.

 
IShellWindows::_NewEnum

Recupera un enumerador para la colección de ventanas de Shell.
IShellWindows::FindWindowSW

Busca una ventana en la colección de ventanas de Shell y devuelve el identificador de la ventana y la interfaz IDispatch.
IShellWindows::get_Count

Obtiene el número de ventanas de la colección de ventanas de Shell.
IShellWindows::Item

Devuelve la ventana shell registrada para un índice especificado.
IShellWindows::OnActivated

Se produce cuando cambia el estado de activación de una ventana de Shell.
IShellWindows::OnCreated

Se produce cuando se crea una nueva ventana de Shell para un marco.
IShellWindows::OnNavigate

Se produce cuando se navega a una nueva ubicación en una ventana de Shell.
IShellWindows::P rocessAttachDetach

Desusado. Siempre devuelve S_OK.
IShellWindows::Register

Registra una ventana abierta como una ventana shell; el identificador especifica la ventana.
IShellWindows::RegisterPending

Registra una ventana pendiente como una ventana shell; la ventana se especifica mediante un PIDL absoluto.
IShellWindows::Revoke

Revoca el registro de una ventana de Shell y quita la ventana de la colección de ventanas de Shell.

Comentarios

Una ventana de Shell es una ventana que se ha registrado llamando a IShellWindows::Register o IShellWindows::RegisterPending. Tras el registro, la ventana especificada se agrega a la colección de ventanas de Shell y se le concede una cookie que identifica de forma única la ventana dentro de la colección. Una ventana se puede anular mediante una llamada a IShellWindows::Revoke.

La colección de ventanas de Shell incluye ventanas del explorador de archivos y explorador web de Internet Explorer y exploradores web de terceros). Normalmente, cada ventana de Shell implementa IDispatch; IShellWindows::Item e IShellWindows::FindWindowSW proporcionan formas de acceder a la interfaz IDispatch de una ventana de Shell. Para obtener más información, vea Funciones de automatización y interfaz de distribución.

IID IID_IShellWindows (85CB6900-4D95-11CF-960C-0080C7F4EE85)
CLSID CLSID_ShellWindows (9BA05972-F6A8-11CF-A442-00A0C90A8F39)
 

En el ejemplo siguiente se muestra cómo recuperar una instancia de 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();
    }
}

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado exdisp.h

Consulte también

Cocreateinstance

Coinitialize

DShellWindowsEvents

IDispatch

ShellWindows