mirror of https://github.com/lianthony/NT4.0
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.
64 lines
1.8 KiB
64 lines
1.8 KiB
/**********************************************************************/
|
|
/** Microsoft Windows NT **/
|
|
/** Copyright(c) Microsoft Corp., 1991 **/
|
|
/**********************************************************************/
|
|
/*
|
|
SPROEXCP.H
|
|
C (not C++) Exception handling definitions for SPROLOG
|
|
|
|
|
|
FILE HISTORY:
|
|
DavidHov 3/26/92
|
|
|
|
*/
|
|
|
|
#ifndef _SPROEXCP_H_
|
|
#define _SPROEXCP_H_
|
|
|
|
#include <excpt.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"
|
|
{
|
|
#endif
|
|
|
|
#define CHMAXBUFFER 300
|
|
|
|
// SProlog interpreter state enumeration
|
|
|
|
enum SPROLOG_STATE
|
|
{ SP_VOID, SP_INIT, SP_QUERY, SP_CONSULT, SP_TERM, SP_INTERR } ;
|
|
|
|
// Jump buffer and exception error containment structure for Win3/32.
|
|
|
|
struct SpJumpBuffer
|
|
{
|
|
BOOL fInUse ; // "in use" flag: assertion checking
|
|
enum SPROLOG_STATE spState ; // current interpreter state
|
|
const TCHAR * pchMesg ; // a formatted err message from SPROLOG
|
|
MSGID msgId ; // a message number from SPROLOG
|
|
#ifndef WIN32 // if Win3 (16-bit)
|
|
jmp_buf jmpBuf ; // the jump buffer itself
|
|
#endif
|
|
};
|
|
|
|
extern struct SpJumpBuffer spJumpBuffer ;
|
|
|
|
extern void SPExcpMsgStr ( const TCHAR * pchMesg ) ;
|
|
extern void SPExcpMsgId ( MSGID msgId ) ;
|
|
|
|
// Do either a query or consult operation. If "pszResult" == NULL,
|
|
// it's a consult; otherwise, it's a query.
|
|
|
|
extern BOOL SpDoQueryConsult (
|
|
const CHAR * pszFileName, // File name to query/consult, or
|
|
const CHAR * pszData, // data buffer to query/consult
|
|
CHAR * pszResult, // Result buffer (query only)
|
|
ULONG lcbResult, // Result buff length (query only)
|
|
APIERR * pErr ) ; // Error which occurred (iff FALSE)
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif /* _SPROEXCP_H_ */
|
|
|