Felhantering i COM (COM)
Nästan alla COM-funktioner och gränssnittsmetoder returnerar ett värde av typen HRESULT-. HRESULT- (namnet kan läsas som "resultathandtag") är ett sätt att returnera ett värde för lyckad, varning eller fel. En HRESULT- är faktiskt inte ett handtag (se Varför börjar HRESULT med H när det inte är ett handtag till något?); det är bara ett värde med flera fält kodade i det. Enligt COM-specifikationen indikerar ett resultat av noll framgång, och ett icke-nollresultat indikerar fel.
På källkodsnivå består alla felvärden av tre delar, avgränsade med understreck. Den första delen är prefixet som identifierar den anläggning som är associerad med felet, den andra delen är E för fel och den tredje delen är en sträng som beskriver det faktiska villkoret. Till exempel returneras STG_E_MEDIUMFULL när det inte finns något utrymme kvar på en hårddisk. Prefixet STG anger lagringsplatsen, E- anger att statuskoden representerar ett fel och MEDIUMFULL- innehåller specifik information om felet. Många av de värden som du kanske vill returnera från en gränssnittsmetod eller funktion definieras i Winerror.h.
Mer information om felhantering finns i följande avsnitt:
- struktur för COM-felkoder
- koder i FACILITY_ITF
- Använda makron för felhantering
- COM-felhantering i Java och Visual Basic
- strategier för felhantering
- hantering av okända fel
Relaterade ämnen