IServiceProvider-Schnittstelle (servprov.h)
Stellt einen generischen Zugriffsmechanismus zum Suchen eines GUID-identifizierten Diensts bereit.
Vererbung
Die IServiceProvider-Schnittstelle erbt von der IUnknown-Schnittstelle.
Methoden
Die IServiceProvider-Schnittstelle verfügt über diese Methoden.
IServiceProvider::QueryService Fungiert als Factorymethode für alle Dienste, die über eine Implementierung von IServiceProvider verfügbar gemacht werden. |
IServiceProvider::QueryService Fungiert als Factorymethode für alle Dienste, die über eine Implementierung von IServiceProvider verfügbar gemacht werden. Akzeptiert einen CLSID-Parameter. |
Hinweise
Die IServiceProvider-Schnittstelle ist ein generischer Zugriffsmechanismus zum Suchen eines GUID-identifizierten Diensts, der über ein Steuerelement oder ein anderes Objekt bereitgestellt wird, mit dem der Dienst kommunizieren kann. Beispielsweise kommuniziert ein eingebettetes Objekt (z. B. ein OLE-Steuerelement) in der Regel nur mit dem zugehörigen Clientstandortobjekt im Container über die IOleClientSite-Schnittstelle , die mithilfe von IOleObject::SetClientSite bereitgestellt wird. Das eingebettete Objekt muss den Clientstandort nach einem anderen Dienst fragen, den der Container unterstützt, wenn dieser Dienst möglicherweise nicht am Clientstandort implementiert ist.
Der Clientstandort muss eine Möglichkeit bereitstellen, mit der das vom Standort verwaltete Steuerelement bei Bedarf auf den Dienst zugreifen kann. Beispielsweise kann die IOleInPlaceSite::GetWindowContext)-Funktion von einem direkten Objekt oder Steuerelement verwendet werden, um auf Schnittstellenzeiger für das Dokumentobjekt zuzugreifen, das die Website und das Frameobjekt enthält, das das Dokument enthält. Da diese Schnittstellenzeiger für separate Objekte vorhanden sind, kann das Steuerelement die QueryInterface der Website nicht aufrufen, um diese Zeiger abzurufen. Verwenden Sie stattdessen die IServiceProvider-Schnittstelle.
Die IServiceProvider-Schnittstelle muss eine einzelne Methode, QueryService, über die ein Aufrufer die Dienst-ID (SID, eine GUID), die IID der zurückzugebenden Schnittstelle und die Adresse der Schnittstellenzeigervariablen des Aufrufers angibt. Die zweite Überladung leitet die IID aus dem an die -Methode übergebenen Ausgabezeiger ab.
Die IID für diese Schnittstelle ist IID_IServiceProvider.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Build 22000 |
Unterstützte Mindestversion (Server) | Windows Build 22000 |
Kopfzeile | servprov.h |