IVirtualDesktopManager インターフェイス (shobjidl_core.h)
アプリケーションが仮想ワークスペースを形成するウィンドウのグループと対話できるようにするメソッドを公開します。 このインターフェイスは、CLSID_VirtualDesktopManagerによって識別される COM クラスである VirtualDesktopManager によって実装されます。 CoCreateInstance(CLSID_VirtualDesktopManager) を使用して、このオブジェクトのインスタンスを取得します。
継承
IVirtualDesktopManager インターフェイスは、IUnknown インターフェイスから継承します。 IVirtualDesktopManager には、次の種類のメンバーもあります。
メソッド
IVirtualDesktopManager インターフェイスには、これらのメソッドがあります。
IVirtualDesktopManager::GetWindowDesktopId 指定された最上位ウィンドウをホストしている仮想デスクトップの識別子を取得します。 |
IVirtualDesktopManager::IsWindowOnCurrentVirtualDesktop 指定されたウィンドウが現在アクティブな仮想デスクトップ上にあるかどうかを示します。 |
IVirtualDesktopManager::MoveWindowToDesktop 指定した仮想デスクトップにウィンドウを移動します。 |
解説
ユーザーは、ウィンドウのコレクションをグループ化して仮想デスクトップを作成できます。 すべてのウィンドウは、仮想デスクトップの一部と見なされます。 1 つの仮想デスクトップが非表示の場合、それに関連付けられているすべてのウィンドウも非表示になります。 これにより、ユーザーは複数の作業環境を作成し、それらを切り替えることができます。 同様に、仮想デスクトップをアクティブに選択すると、その仮想デスクトップに関連付けられているウィンドウが画面に表示されます。
この概念をサポートするために、アプリケーションでは、ユーザーを仮想デスクトップ間で自動的に切り替えないようにする必要があります。 ユーザーのみがその変更を許可する必要があります。 これをサポートするには、新しく作成されたウィンドウが現在アクティブな仮想デスクトップに表示されます。 さらに、アプリケーションが現在アクティブなウィンドウを再利用できる場合は、現在アクティブな仮想デスクトップ上にある場合にのみ、ウィンドウを再利用する必要があります。 それ以外の場合は、新しいウィンドウを作成する必要があります。
上の図では、ユーザーは 2 つの仮想デスクトップを持ち、 VD2 は現在アクティブな仮想デスクトップです。 ユーザーが Outlook メッセージ内のリンクをクリックすると、インターネット エクスプローラー ウィンドウでリンクを開く URI アクティブ化が行われます。 ユーザーが現在のウィンドウでリンクを開くように IE を構成している場合、通常は現在開いているウィンドウが使用されます。 ただし、この場合、IE は非アクティブな仮想デスクトップ上にあります。 このシナリオでは、IE は現在アクティブな仮想デスクトップに新しいウィンドウを作成する必要があります。要件
サポートされている最小のクライアント | Windows 10 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2016 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | shobjidl_core.h |