Gestione degli errori in COM (COM)

Quasi tutte le funzioni COM e i metodi di interfaccia restituiscono un valore del tipo HRESULT. HRESULT (il nome può essere letto come "handle risultato") è un modo per restituire un valore di esito positivo, di avviso o di errore. Un HRESULT non è in realtà un handle (vedere Perché HRESULT inizia con H quando non è un handle per niente?). Si tratta solo di un valore con diversi campi codificati in esso. In base alla specifica COM, un risultato pari a zero indica l'esito positivo e un risultato diverso da zero indica un errore.

A livello di codice sorgente, tutti i valori di errore sono costituiti da tre parti, separate da caratteri di sottolineatura. La prima parte è il prefisso che identifica la funzionalità associata all'errore, la seconda parte è E per l'errore e la terza parte è una stringa che descrive la condizione effettiva. Ad esempio, STG_E_MEDIUMFULL viene restituito quando non è disponibile spazio su un disco rigido. Il prefisso STG indica la struttura di archiviazione, l'E indica che il codice di stato rappresenta un errore e MEDIUMFULL fornisce informazioni specifiche sull'errore. Molti dei valori che potresti voler restituire da un metodo di interfaccia o una funzione sono definiti in Winerror.h.

Per altre informazioni sulla gestione degli errori, vedere le sezioni seguenti:

Codici di errore COM