Freigeben über


IUnknown_GetWindow-Funktion (shlwapi.h)

Versucht, ein Fensterhandle aus einem COM-Objekt (Component Object Model) abzurufen, indem verschiedene Schnittstellen mit einer GetWindow-Methode abgefragt werden .

Syntax

LWSTDAPI IUnknown_GetWindow(
  [in]  IUnknown *punk,
  [out] HWND     *phwnd
);

Parameter

[in] punk

Typ: IUnknown*

Ein Zeiger auf das COM-Objekt, von dem diese Funktion versucht, ein Fensterhandle abzurufen.

[out] phwnd

Typ: HWND*

Ein Zeiger auf einen HWND, der das Fensterhandle empfängt, wenn diese Funktion erfolgreich zurückgegeben wird. Wenn kein Fensterhandle abgerufen wurde, wird dieser Parameter auf NULL festgelegt.

Rückgabewert

Typ: HRESULT

Gibt S_OK zurück, wenn ein Fensterhandle erfolgreich zurückgegeben wurde, oder andernfalls einen COM-Fehlercode. Wenn keine geeignete Schnittstelle gefunden wurde, gibt die Funktion E_NOINTERFACE zurück. Andernfalls gibt die Funktion das HRESULT zurück, das von der GetWindow-Methode der entsprechenden Schnittstelle zurückgegeben wird.

Hinweise

Diese Funktion versucht, das Fensterhandle abzurufen, indem IOleWindow::GetWindow, IInternetSecurityMgrSite::GetWindow und IShellView::GetWindow aufgerufen wird. Es ist möglich, dass zukünftige Versionen von IUnknown_GetWindow zusätzliche Schnittstellen versuchen.

Hinweis Die Abfrage für IShellView ist theoretisch unnötig, da IShellView von IOleWindow abgeleitet ist. Die Funktion fragt diese Schnittstelle explizit ab, da einige Objekte QueryInterface falsch implementieren und nicht auf eine Abfrage für die Basisschnittstelle reagieren können.
 

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional, Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server, Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile shlwapi.h
DLL Shlwapi.dll (Version 5.0 oder höher)