Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Opmerking
De ATL (Active Template Library) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.
Deze klasse biedt methoden voor het maken en gebruiken van een handle-object.
Syntaxis
class CHandle
Leden
Openbare constructors
| Naam | Description |
|---|---|
| CHandle::CHandle | De constructor. |
| CHandle::~CHandle | De destructor. |
Openbare methoden
| Naam | Description |
|---|---|
| CHandle::Attach | Roep deze methode aan om het CHandle object aan een bestaande ingang te koppelen. |
| CHandle::Close | Roep deze methode aan om een CHandle object te sluiten. |
| CHandle::D etach | Roep deze methode aan om een ingang van een CHandle object los te koppelen. |
Openbare operators
| Naam | Description |
|---|---|
| CHandle::operator HANDLE | Retourneert de waarde van de opgeslagen ingang. |
| CHandle::operator = | Toewijzingsoperator. |
Publieke dataleden
| Naam | Description |
|---|---|
| CHandle::m_h | De lidvariabele waarin de ingang wordt opgeslagen. |
Opmerkingen
Een CHandle object kan worden gebruikt wanneer een ingang vereist is: het belangrijkste verschil is dat het CHandle object automatisch wordt verwijderd.
Opmerking
Sommige API-functies gebruiken NULL als een lege of ongeldige ingang, terwijl andere INVALID_HANDLE_VALUE gebruiken.
CHandle maakt alleen gebruik van NULL en behandelt INVALID_HANDLE_VALUE als een echte ingang. Als u een API aanroept die INVALID_HANDLE_VALUE kan retourneren, moet u controleren op deze waarde voordat u CHandle::Koppel of geef deze door aan de CHandle constructor en geeft u in plaats daarvan NULL door.
Requirements
Header: atlbase.h
CHandle::Attach
Roep deze methode aan om het CHandle object aan een bestaande ingang te koppelen.
void Attach(HANDLE h) throw();
Parameterwaarden
h
CHandle zal eigenaar worden van de ingang h.
Opmerkingen
Wijst het CHandle object toe aan de h-ingang en roept vervolgens h.Detach()aan. In builds voor foutopsporing wordt een ATLASSERT gegenereerd als h NULL is. Er wordt geen andere controle uitgevoerd op de geldigheid van de ingang.
CHandle::CHandle
De constructor.
CHandle() throw();
CHandle(CHandle& h) throw();
explicit CHandle(HANDLE h) throw();
Parameterwaarden
h
Een bestaande ingang of CHandle.
Opmerkingen
Hiermee maakt u een nieuw CHandle object, optioneel met behulp van een bestaande ingang of CHandle een bestaand object.
CHandle::~CHandle
De destructor.
~CHandle() throw();
Opmerkingen
Hiermee wordt het CHandle object vrijgemaakt door CHandle::Close aan te roepen.
CHandle::Close
Roep deze methode aan om een CHandle object te sluiten.
void Close() throw();
Opmerkingen
Hiermee sluit u een geopende objectgreep. Als de handle NULL is, wat het geval is als Close deze al is aangeroepen, wordt er een ATLASSERT gegenereerd in foutopsporingsversies.
CHandle::D etach
Roep deze methode aan om een ingang van een CHandle object los te koppelen.
HANDLE Detach() throw();
Retourwaarde
Retourneert de greep die wordt losgekoppeld.
Opmerkingen
Hiermee wordt het eigendom van de ingang vrijgegeven.
CHandle::m_h
De lidvariabele waarin de ingang wordt opgeslagen.
HANDLE m_h;
CHandle::operator =
De toewijzingsoperator.
CHandle& operator=(CHandle& h) throw();
Parameterwaarden
h
CHandle zal eigenaar worden van de ingang h.
Retourwaarde
Retourneert een verwijzing naar het nieuwe CHandle object.
Opmerkingen
Als het CHandle object momenteel een ingang bevat, wordt het gesloten. Het CHandle object dat wordt doorgegeven, heeft de handleverwijzing ingesteld op NULL. Dit zorgt ervoor dat twee CHandle objecten nooit dezelfde actieve ingang bevatten.
CHandle::operator HANDLE
Retourneert de waarde van de opgeslagen ingang.
operator HANDLE() const throw();
Opmerkingen
Retourneert de waarde die is opgeslagen in CHandle::m_h.