125 lines
3.9 KiB
C
125 lines
3.9 KiB
C
/*==========================================================================
|
|
*
|
|
* Copyright (C) 1995 Microsoft Corporation. All Rights Reserved.
|
|
*
|
|
* File: DNetErrors.h
|
|
* Content: Function for expanding DNet errors to debug output
|
|
*@@BEGIN_MSINTERNAL
|
|
* History:
|
|
* Date By Reason
|
|
* ==== == ======
|
|
* 12/04/98 johnkan Created
|
|
* 08/28/2000 masonb Voice Merge: Fix for code that only defines one of DEBUG, DBG, _DEBUG
|
|
*@@END_MSINTERNAL
|
|
*
|
|
***************************************************************************/
|
|
|
|
|
|
#ifndef __DNET_ERRORS_H__
|
|
#define __DNET_ERRORS_H__
|
|
|
|
// Make sure all variations of DEBUG are defined if any one is
|
|
#if defined(DEBUG) || defined(DBG) || defined(_DEBUG)
|
|
#if !defined(DBG)
|
|
#define DBG
|
|
#endif
|
|
#if !defined(DEBUG)
|
|
#define DEBUG
|
|
#endif
|
|
#if !defined(_DEBUG)
|
|
#define _DEBUG
|
|
#endif
|
|
#endif
|
|
|
|
//**********************************************************************
|
|
// Constant definitions
|
|
//**********************************************************************
|
|
|
|
//
|
|
// enumerated values for determining output destination
|
|
//
|
|
typedef enum
|
|
{
|
|
DPNERR_OUT_DEBUGGER
|
|
} DN_OUT_TYPE;
|
|
|
|
//
|
|
// enumerated values to determine error class
|
|
typedef enum
|
|
{
|
|
EC_DPLAY8,
|
|
EC_INET,
|
|
EC_TAPI,
|
|
EC_WIN32,
|
|
EC_WINSOCK
|
|
|
|
// no entry for TAPI message output
|
|
|
|
} EC_TYPE;
|
|
|
|
//**********************************************************************
|
|
// Macro definitions
|
|
//**********************************************************************
|
|
|
|
#ifdef _DEBUG
|
|
|
|
// where is the output going?
|
|
#define OUT_TYPE DPNERR_OUT_DEBUGGER
|
|
|
|
// ErrorLevel = DPF level for outputting errors
|
|
// DNErrpr = DirectNet error code
|
|
|
|
#define DisplayString( ErrorLevel, String ) LclDisplayString( OUT_TYPE, ErrorLevel, String )
|
|
#define DisplayErrorCode( ErrorLevel, Win32Error ) LclDisplayError( EC_WIN32, OUT_TYPE, ErrorLevel, Win32Error )
|
|
#define DisplayDNError( ErrorLevel, DNError ) LclDisplayError( EC_DPLAY8, OUT_TYPE, ErrorLevel, DNError )
|
|
#define DisplayInetError( ErrorLevel, InetError ) LclDisplayError( EC_INET, OUT_TYPE, ErrorLevel, InetError )
|
|
#define DisplayTAPIError( ErrorLevel, TAPIError ) LclDisplayError( EC_TAPI, OUT_TYPE, ErrorLevel, TAPIError )
|
|
#define DisplayWinsockError( ErrorLevel, WinsockError ) LclDisplayError( EC_WINSOCK, OUT_TYPE, ErrorLevel, WinsockError )
|
|
#define DisplayTAPIMessage( ErrorLevel, pTAPIMessage ) LclDisplayTAPIMessage( OUT_TYPE, ErrorLevel, pTAPIMessage )
|
|
|
|
#else // _DEBUG
|
|
|
|
#define DisplayString( ErrorLevel, String )
|
|
#define DisplayErrorCode( ErrorLevel, Win32Error )
|
|
#define DisplayDNError( ErrorLevel, DNError )
|
|
#define DisplayInetError( ErrorLevel, InetError )
|
|
#define DisplayTAPIError( ErrorLevel, TAPIError )
|
|
#define DisplayWinsockError( ErrorLevel, WinsockError )
|
|
#define DisplayTAPIMessage( ErrorLevel, pTAPIMessage )
|
|
|
|
#endif // _DEBUG
|
|
|
|
//**********************************************************************
|
|
// Structure definitions
|
|
//**********************************************************************
|
|
|
|
typedef struct linemessage_tag LINEMESSAGE;
|
|
|
|
//**********************************************************************
|
|
// Variable definitions
|
|
//**********************************************************************
|
|
|
|
//**********************************************************************
|
|
// Function prototypes
|
|
//**********************************************************************
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif // __cplusplus
|
|
|
|
#ifdef _DEBUG
|
|
|
|
// don't call this function directly, use the 'DisplayDNError' macro
|
|
void LclDisplayError( EC_TYPE ErrorType, DN_OUT_TYPE OutputType, DWORD ErrorLevel, HRESULT ErrorCode );
|
|
void LclDisplayString( DN_OUT_TYPE OutputType, DWORD ErrorLevel, char *pString );
|
|
void LclDisplayTAPIMessage( DN_OUT_TYPE OutputType, DWORD ErrorLevel, const LINEMESSAGE *const pLineMessage );
|
|
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif // __cplusplus
|
|
|
|
#endif // __DNET_ERRORS_H__
|
|
|