IUnknown_AtomicRelease-Funktion (shlwapi.h)

Gibt einen COM-Zeiger (Component Object Model) frei und legt ihn auf NULL fest.

Syntax

void IUnknown_AtomicRelease(
  [in, out, optional] void **ppunk
);

Parameter

[in, out, optional] ppunk

Typ: void**

Die Adresse eines Zeigers auf eine COM-Schnittstelle.

Rückgabewert

Keine

Bemerkungen

Wenn ppunk auf einen NULL-Zeiger zeigt, wird kein Vorgang ausgeführt. Andernfalls wird davon ausgegangen, dass ppunk die Adresse eines COM-Schnittstellenzeigers ist, der von IUnknown abgeleitet wird. Die Funktion ruft die IUnknown::Release-Methode der Schnittstelle auf und legt dann den Schnittstellenzeiger auf NULL fest.

Beispiele

Im folgenden Beispiel wird IUnknown_AtomicRelease verwendet, um den Stream freizugeben, sofern vorhanden. Wenn dies nicht der Fall ist, wird nichts ausgeführt.

void sample()
{
    IStream *pstm = NULL;
    CreateStreamOnHGlobal(NULL, TRUE, &pstm);
    
    IUnknown_AtomicRelease((void**)&pstm);
    
    // At this point, pstm is NULL
}

Anforderungen

   
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)