次の方法で共有


IShellWindows インターフェイス (exdisp.h)

開いているシェル ウィンドウのコレクションへのアクセスを提供します。

継承

IShellWindows インターフェイスは、IDispatch インターフェイスから継承されます。 IShellWindows には、次の種類のメンバーもあります。

メソッド

IShellWindows インターフェイスには、次のメソッドがあります。

 
IShellWindows::_NewEnum

シェル ウィンドウのコレクションの列挙子を取得します。
IShellWindows::FindWindowSW

シェル ウィンドウ コレクション内のウィンドウを検索し、ウィンドウのハンドルと IDispatch インターフェイスを返します。
IShellWindows::get_Count

シェル ウィンドウ コレクション内のウィンドウの数を取得します。
IShellWindows::Item

指定したインデックスの登録済みシェル ウィンドウを返します。
IShellWindows::OnActivated

シェル ウィンドウのアクティブ化状態が変更されたときに発生します。
IShellWindows::OnCreated

フレームに対して新しいシェル ウィンドウが作成されたときに発生します。
IShellWindows::OnNavigate

シェル ウィンドウが新しい場所に移動したときに発生します。
IShellWindows::P rocessAttachDetach

非推奨になりました。 常に S_OK を返します。
IShellWindows::Register

開いているウィンドウをシェル ウィンドウとして登録します。ウィンドウはハンドルで指定されます。
IShellWindows::RegisterPending

保留中のウィンドウをシェル ウィンドウとして登録します。ウィンドウは絶対 PIDL で指定されます。
IShellWindows::Revoke

シェル ウィンドウの登録を取り消し、Shell ウィンドウ コレクションからウィンドウを削除します。

注釈

シェル ウィンドウは、IShellWindows::Register または IShellWindows::RegisterPending を呼び出して登録されたウィンドウです。 登録時に、指定されたウィンドウがシェル ウィンドウのコレクションに追加され、コレクション内のウィンドウを一意に識別する Cookie が付与されます。 ウィンドウを登録解除するには、 IShellWindows::Revoke を呼び出します。

シェル ウィンドウ コレクションには、エクスプローラー ウィンドウと Web ブラウザー ウィンドウインターネット エクスプローラーおよびサード パーティの Web ブラウザー) が含まれます。 通常、各シェル ウィンドウは IDispatch を実装します。 IShellWindows::ItemIShellWindows::FindWindowSW は、シェル ウィンドウの IDispatch インターフェイスにアクセスする方法を提供します。 詳細については、「 ディスパッチ インターフェイスとオートメーション関数」を参照してください。

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

こちらもご覧ください

Cocreateinstance

CoInitialize

DShellWindowsEvents

IDispatch

ShellWindows