WindowsXP-SP1/enduser/stuff/itircl/inc/mverror.h
2020-09-30 16:53:49 +02:00

261 lines
11 KiB
C

#ifdef __cplusplus
extern "C" {
#endif
/****************************************************************************\
* *
* MVERROR.H *
* *
* Copyright (C) Microsoft Corporation 1993 - 1994. *
* All Rights reserved. *
* *
******************************************************************************
* *
* Module Intent: *
* Defines constants used as error codes. *
* *
\****************************************************************************/
#ifndef ERRB_DEFINED
#define ERRB_DEFINED
/*************************************************************************
* Error management.
*************************************************************************/
typedef WORD ERR; // Use this for internal & external errors
typedef ERR RC; // This should be phased out
typedef WORD HCE; // User errors
typedef WORD EP; // Error Phase
/*************************************************************************
*
* CALLBACK FUNCTIONS PROTOTYPES
*
* User callback functions are needed in case:
* - The application needs to support interrupt
* - The application needs to display error messages its way
* - The application needs to know the status of the process
*************************************************************************/
typedef ERR (FAR PASCAL *ERR_FUNC) (DWORD dwFlag, LPVOID pUserData, LPVOID pMessage);
/*************************************************************************
* Call back structure
* Contains information about all callback functions
*************************************************************************/
#define ERRFLAG_INTERRUPT 0x01 // The processes should be cancelled
#define ERRFLAG_STATUS 0x02 // High-level status messages
#define ERRFLAG_STATUS_VERBOSE 0x04 // Low-level status messages
#define ERRFLAG_ERROR 0x08 // Warning & Error messages
#define ERRFLAG_STRING 0x10 // Debug string messages
typedef struct fCallBack_msg
{
ERR_FUNC MessageFunc;
LPVOID pUserData;
DWORD dwFlags;
} FCALLBACK_MSG, FAR * PFCALLBACK_MSG;
// Error Phase values
#define epNoFile 0
#define epLine 1
#define epTopic 2
#define epOffset 3
#define epMVBtopic 4
#define epAliasLine 5
#define epByteOffset 6
// ***********************************************************************
// This structure should be filled out and passed back in the case of
// an error.
// ***********************************************************************
typedef struct
{
LPCSTR pchFile;
LONG iLine;
DWORD iTopic;
DWORD fCustom; // If true then var1 is LPCSTR to custom error message
DWORD var1, var2, var3; // Error parameters
EP ep; // Error Phase
HCE errCode;
} ERRC, FAR *PERRC;
#define CALLBACKKEY 0x524A4A44
typedef struct
{
DWORD_PTR dwReserved;
DWORD dwKey;
FCALLBACK_MSG Callback;
} CUSTOMSTRUCT, FAR *PCUSTOMSTRUCT;
/*************************************************************************
* Error management.
*************************************************************************/
/******************************************
* Error structure. For internal use only
******************************************/
typedef struct
{
ERR err; // Error code.
LONG iUser; // Whatever you want.
BYTE *aszFile; // Source file that caught an error.
DWORD cLine; // Source line at which the failure took place.
} ERRB, FAR *LPERRB;
#define GetErrCode(lperrb) ((lperrb)->err)
ERR EXPORT_API PASCAL FAR SetErr (LPERRB lperrb, ERR ErrCode, WORD iUserCode);
ERR EXPORT_API CDECL MVSetUserCallback (LPVOID pStruct, PFCALLBACK_MSG pCallback);
ERR EXPORT_API PASCAL FAR DebugSetErr (LPERRB lperrb, ERR ErrCode,
DWORD Line, char FAR *module, WORD iUserCode);
HCE EXPORT_API FAR IssueMessage
(DWORD dwFlag, PFCALLBACK_MSG pCallbackInfo, PERRC perr, HCE hce, ...);
void EXPORT_API FAR IssueString
(PFCALLBACK_MSG pCallback, LPVOID pMessage);
#if defined(_DEBUG)
#define SetErrCode(a,b) DebugSetErr(a, b, __LINE__, (char FAR *)s_aszModule, 0)
#else
#define SetErrCode(a,b) SetErr(a, b, 0)
#endif
#endif // ERRB_DEFINED
/* End of internal usage */
// MAX size of an error string in the resource file.
#define MAX_ERROR_MSG 256
/************************************
* Error Constants
*************************************/
/* General errors */
#ifndef SUCCEED // already defined in sqlfront.h, used by mos
#define SUCCEED 0
#endif
#ifndef FAIL
#define FAIL 1
#endif
#define ERR_NONE 0
#define ERR_SUCCESS 0
#define ERR_OODC 1002 // Out of Display Contexts
#define ERR_NOTITLE 1003
#define ERR_INVALID 1004 // Invalid file
#define ERR_NOTOPIC 1005
#define ERR_BADPRINT 1006
#define ERR_BADFILE 1007
#define ERR_OLDFILE 1008
#define ERR_BUFOVERFLOW 1009
#define ERR_FSREADWRITE 1010
#define ERR_FCENDOFTOPIC 1011
#define ERR_BADPARAM 1012
#define ERR_NOFONTCHANGE 1013
#define ERR_NOMOREHOTSPOTS 1014
#define ERR_BADEWWINCLASS 1015
#define ERR_PARTIAL 1016
#define ERR_NOADDRESS 1017
#define ERR_NORECTANGLE 1018
#define ERR_NOVSCROLL 1019 // No Vertical Scrollbar
#define ERR_NOHSCROLL 1020 // No Horizontal Scrollbar
#define ERR_CANTFINDDLL 1021
#define ERR_CANTUSEDLL 1022
#define ERR_EWOOM 1023 // Embedded Window Out Of Memory
#define ERR_DEBUGMISMATCH 1024
#define ERR_BADPOLYGON 1025 // less than 3 pts or none passed
#define ERR_BADEWCALLBACK 1026
#define ERR_OLDFONTTABLE 1027
#define ERR_NOSUCHSTYLE 1028
#define ERR_GROUPIDTOOBIG 1029
#define ERR_NOMOREHIGHLIGHTS 1030
#define ERR_NOSELECTION 1031
#define ERR_KEYSELECTFAILED 1032 // may need to scroll MV to work.
#define ERR_NOTSCROLLED 1033
#define ERR_NOINDEXLOADED 1034 // search index not loaded
#define ERR_EWCREATEFAILED 1035 // CreateWindow failed.
#define ERR_NOWINDOW 1036 // Window not set in LPMV
#define ERR_OUTOFRANGE 1037
#define ERR_NOTHINGTOCOPY 1038
#define ERR_NOTFOUND 1039
#define ERR_NOTSUPPORTED 1040
#define ERR_RECURSION 1041 // function is currently executing.
#define ERR_XAPARATOOBIG 1042
#define ERR_DUPTITLE 1043 // Duplicate handle in an update list (titleas.c)
#define ERR_INTERNAL_BASE 2000
#define ERR_GRAMMAR_BASE 3000
#define ERR_FAILED (ERR_INTERNAL_BASE + 1)
#define ERR_INTERRUPT (ERR_INTERNAL_BASE + 2)
#define ERR_NEARMEMORY (ERR_INTERNAL_BASE + 3)
#define ERR_MEMORY (ERR_INTERNAL_BASE + 4)
#define ERR_DISKFULL (ERR_INTERNAL_BASE + 5)
#define ERR_WORDTOOLONG (ERR_INTERNAL_BASE + 6)
#define ERR_BADVERSION (ERR_INTERNAL_BASE + 7)
#define ERR_TOOMANYTOPICS (ERR_INTERNAL_BASE + 8)
#define ERR_TOOMANYSTOPS (ERR_INTERNAL_BASE + 9)
#define ERR_TOOLONGSTOPS (ERR_INTERNAL_BASE + 10)
#define ERR_STEMTOOLONG (ERR_INTERNAL_BASE + 11)
#define ERR_TREETOOBIG (ERR_INTERNAL_BASE + 12)
#define ERR_CANTREAD (ERR_INTERNAL_BASE + 13)
#define ERR_IDXSEGOVERFLOW (ERR_INTERNAL_BASE + 14)
#define ERR_BADARG (ERR_INTERNAL_BASE + 15)
#define ERR_VOCABTOOLARGE (ERR_INTERNAL_BASE + 16)
#define ERR_NOTEXIST (ERR_INTERNAL_BASE + 17)
#define ERR_BADOPERATOR (ERR_INTERNAL_BASE + 18)
#define ERR_TERMTOOCOMPLEX (ERR_INTERNAL_BASE + 19)
#define ERR_SEARCHTOOCOMPLEX (ERR_INTERNAL_BASE + 20)
#define ERR_BADSYSCONFIG (ERR_INTERNAL_BASE + 21)
#define ERR_ASSERT (ERR_INTERNAL_BASE + 22)
#define ERR_TOOMANYDUPS (ERR_INTERNAL_BASE + 23)
#define ERR_INVALID_FS_FILE (ERR_INTERNAL_BASE + 24)
#define ERR_OUT_OF_RANGE (ERR_INTERNAL_BASE + 25)
#define ERR_SEEK_FAILED (ERR_INTERNAL_BASE + 26)
#define ERR_FILECREAT_FAILED (ERR_INTERNAL_BASE + 27)
#define ERR_CANTWRITE (ERR_INTERNAL_BASE + 28)
#define ERR_NOHANDLE (ERR_INTERNAL_BASE + 29)
#define ERR_EXIST (ERR_INTERNAL_BASE + 30)
#define ERR_INVALID_HANDLE (ERR_INTERNAL_BASE + 31)
#define ERR_BADFILEFORMAT (ERR_INTERNAL_BASE + 32)
#define ERR_CANTDELETE (ERR_INTERNAL_BASE + 33)
#define ERR_NOPERMISSION (ERR_INTERNAL_BASE + 34)
#define ERR_CLOSEFAILED (ERR_INTERNAL_BASE + 35)
#define ERR_DUPLICATE (ERR_INTERNAL_BASE + 36)
#define ERR_NOMERGEDATA (ERR_INTERNAL_BASE + 37)
#define ERR_TOOMANYTITLES (ERR_INTERNAL_BASE + 38)
#define ERR_BADINDEXFLAGS (ERR_INTERNAL_BASE + 39)
#define ERR_NULLQUERY (ERR_GRAMMAR_BASE + 0)
#define ERR_EXPECTEDTERM (ERR_GRAMMAR_BASE + 1)
#define ERR_EXTRACHARS (ERR_GRAMMAR_BASE + 2)
#define ERR_MISSQUOTE (ERR_GRAMMAR_BASE + 3)
#define ERR_MISSLPAREN (ERR_GRAMMAR_BASE + 4)
#define ERR_MISSRPAREN (ERR_GRAMMAR_BASE + 5)
#define ERR_TOODEEP (ERR_GRAMMAR_BASE + 6)
#define ERR_TOOMANYTOKENS (ERR_GRAMMAR_BASE + 7)
#define ERR_BADFORMAT (ERR_GRAMMAR_BASE + 8)
#define ERR_BADVALUE (ERR_GRAMMAR_BASE + 9)
#define ERR_UNMATCHEDTYPE (ERR_GRAMMAR_BASE + 10)
#define ERR_BADBREAKER (ERR_GRAMMAR_BASE + 11)
#define ERR_BADRANGEOP (ERR_GRAMMAR_BASE + 12)
#define ERR_ALL_WILD (ERR_GRAMMAR_BASE + 13)
#define ERR_NON_LAST_WILD (ERR_GRAMMAR_BASE + 14)
#define ERR_WILD_IN_DTYPE (ERR_GRAMMAR_BASE + 15)
#define ERR_STOPWORD (ERR_GRAMMAR_BASE + 16)
#ifdef __cplusplus
}
#endif