Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die UnregisterControlChangeCallback-Methode entfernt die Registrierung einer IControlChangeNotify-Schnittstelle , die der Client zuvor durch einen Aufruf der IPart::RegisterControlChangeCallback-Methode registriert hat.
Syntax
HRESULT UnregisterControlChangeCallback(
[in] IControlChangeNotify *pNotify
);
Parameter
[in] pNotify
Zeiger auf die IControlChangeNotify-Schnittstelle , deren Registrierung gelöscht werden soll. Der Client hat denselben Schnittstellenzeiger an das Part-Objekt in einem vorherigen Aufruf der IPart::RegisterControlChangeCallback-Methode übergeben. Wenn die UnregisterControlChangeCallback-Methode erfolgreich ist, ruft sie die Release-Methode auf der IControlChangeNotify-Schnittstelle des Clients auf.
Rückgabewert
Wenn die Methode erfolgreich ist, wird S_OK zurückgegeben. Wenn ein Fehler auftritt, können mögliche Rückgabecodes die in der folgenden Tabelle gezeigten Werte umfassen, sind jedoch nicht darauf beschränkt.
| Rückgabecode | Beschreibung |
|---|---|
|
Zeiger pNotify ist NULL. |
|
Die Schnittstelle instance *pNotify ist derzeit nicht registriert. |
Hinweise
Bevor der Client seinen endgültigen Verweis auf die IControlChangeNotify-Schnittstelle freigibt, sollte er UnregisterControlChangeCallback aufrufen, um die Registrierung der Schnittstelle aufzuheben. Andernfalls werden die Ressourcen der Objekte IControlChangeNotify und IPart von der Anwendung verloren. Beachten Sie, dass die IPart::RegisterControlChangeCallback-Methode die IControlChangeNotify::AddRef-Methode des Clients und UnregisterControlChangeCallback die IControlChangeNotify::Release-Methode aufruft. Wenn der Client fehlert, indem er seinen Verweis auf die IControlChangeNotify-Schnittstelle vor dem Aufruf von UnregisterControlChangeCallback freigibt, gibt das IPart-Objekt nie seinen Verweis auf die IControlChangeNotify-Schnittstelle frei. Beispielsweise kann eine schlecht gestaltete IControlChangeNotify-ImplementierungUnregisterControlChangeCallback vom Destruktor für das IControlChangeNotify-Objekt aufrufen. In diesem Fall ruft der Client UnregisterControlChangeCallback erst auf, wenn das IPart-Objekt seinen Verweis auf die IControlChangeNotify-Schnittstelle freigibt, und das IPart-Objekt gibt seinen Verweis auf die IControlChangeNotify-Schnittstelle erst frei, wenn der Client UnregisterControlChangeCallback aufruft. Weitere Informationen zu den Methoden AddRef und Release finden Sie in der Windows SDK-Dokumentation zur IUnknown-Schnittstelle .
Anforderungen
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
| Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
| Zielplattform | Windows |
| Kopfzeile | devicetopology.h |