Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
#ifndef _CUSTOMERROR_HXX_
#define _CUSTOMERROR_HXX_
#define SUBERROR_WILDCARD ((USHORT)(-1))
class CUSTOM_ERROR_ENTRY { public: CUSTOM_ERROR_ENTRY() { InitializeListHead( &_listEntry ); } LIST_ENTRY _listEntry; USHORT _StatusCode; USHORT _SubError; STRU _strError; BOOL _fIsFile; };
class CUSTOM_ERROR_TABLE { public: CUSTOM_ERROR_TABLE() { InitializeListHead( &_ErrorListHead ); } ~CUSTOM_ERROR_TABLE() { CUSTOM_ERROR_ENTRY * pEntry; while ( !IsListEmpty( &_ErrorListHead ) ) { pEntry = CONTAINING_RECORD( _ErrorListHead.Flink, CUSTOM_ERROR_ENTRY, _listEntry );
DBG_ASSERT( pEntry != NULL ); RemoveEntryList( &( pEntry->_listEntry ) ); delete pEntry; } }
HRESULT FindCustomError( USHORT StatusCode, USHORT SubError, BOOL * pfIsFile, STRU * pstrError );
HRESULT BuildTable( WCHAR * pszErrorList );
private: LIST_ENTRY _ErrorListHead; };
#endif
|