95 lines
1.5 KiB
C
95 lines
1.5 KiB
C
|
///////////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// Copyright (c) Microsoft Corporation
|
||
|
//
|
||
|
// SYNOPSIS
|
||
|
//
|
||
|
// Declares he API into the IAS trace facility.
|
||
|
//
|
||
|
///////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
#ifndef IASTRACE_H
|
||
|
#define IASTRACE_H
|
||
|
#pragma once
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
|
VOID
|
||
|
WINAPI
|
||
|
IASTraceInitialize( VOID );
|
||
|
|
||
|
VOID
|
||
|
WINAPI
|
||
|
IASTraceUninitialize( VOID );
|
||
|
|
||
|
DWORD
|
||
|
WINAPI
|
||
|
IASFormatSysErr(
|
||
|
IN DWORD dwError,
|
||
|
IN PSTR lpBuffer,
|
||
|
IN DWORD nSize
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
WINAPIV
|
||
|
IASTracePrintf(
|
||
|
IN PCSTR szFormat,
|
||
|
...
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
WINAPI
|
||
|
IASTraceString(
|
||
|
IN PCSTR szString
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
WINAPI
|
||
|
IASTraceBinary(
|
||
|
IN CONST BYTE* lpbBytes,
|
||
|
IN DWORD dwByteCount
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
WINAPI
|
||
|
IASTraceFailure(
|
||
|
IN PCSTR szFunction,
|
||
|
IN DWORD dwError
|
||
|
);
|
||
|
|
||
|
//////////
|
||
|
// This can only be called from inside a C++ catch block. If you call it
|
||
|
// anywhere else you will probably crash the process.
|
||
|
//////////
|
||
|
VOID
|
||
|
WINAPI
|
||
|
IASTraceExcept( VOID );
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
|
||
|
class IASTraceInitializer
|
||
|
{
|
||
|
public:
|
||
|
IASTraceInitializer() throw ()
|
||
|
{
|
||
|
IASTraceInitialize();
|
||
|
}
|
||
|
|
||
|
~IASTraceInitializer() throw ()
|
||
|
{
|
||
|
IASTraceUninitialize();
|
||
|
}
|
||
|
|
||
|
private:
|
||
|
// Not implemented.
|
||
|
IASTraceInitializer(const IASTraceInitializer&);
|
||
|
IASTraceInitializer& operator=(const IASTraceInitializer&);
|
||
|
};
|
||
|
|
||
|
|
||
|
#endif
|
||
|
#endif // IASTRACE_H
|