Source code of Windows XP (NT5)
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.
|
|
/*++ BUILD Version: 0003 // Increment this if a change has global effects
Copyright (c) 1991-1999 Microsoft Corporation
Module Name:
alert.h
Abstract:
This file contains structures for communication with the Alerter service.
Environment:
User Mode - Win32
Notes:
You must include LmCons.H before this file, since this file depends on values defined in LmCons.H.
ALERT.H includes ALERTMSG.H which defines the alert message numbers
--*/
#ifndef _ALERT_ #define _ALERT_
#if _MSC_VER > 1000 #pragma once #endif
#ifdef __cplusplus extern "C" { #endif
// // Function Prototypes //
NET_API_STATUS NET_API_FUNCTION NetAlertRaise( IN LPCWSTR AlertEventName, IN LPVOID Buffer, IN DWORD BufferSize );
NET_API_STATUS NET_API_FUNCTION NetAlertRaiseEx( IN LPCWSTR AlertEventName, IN LPVOID VariableInfo, IN DWORD VariableInfoSize, IN LPCWSTR ServiceName );
// // Data Structures //
typedef struct _STD_ALERT { DWORD alrt_timestamp; WCHAR alrt_eventname[EVLEN + 1]; WCHAR alrt_servicename[SNLEN + 1]; }STD_ALERT, *PSTD_ALERT, *LPSTD_ALERT;
typedef struct _ADMIN_OTHER_INFO { DWORD alrtad_errcode; DWORD alrtad_numstrings; }ADMIN_OTHER_INFO, *PADMIN_OTHER_INFO, *LPADMIN_OTHER_INFO;
typedef struct _ERRLOG_OTHER_INFO { DWORD alrter_errcode; DWORD alrter_offset; }ERRLOG_OTHER_INFO, *PERRLOG_OTHER_INFO, *LPERRLOG_OTHER_INFO;
typedef struct _PRINT_OTHER_INFO { DWORD alrtpr_jobid; DWORD alrtpr_status; DWORD alrtpr_submitted; DWORD alrtpr_size; }PRINT_OTHER_INFO, *PPRINT_OTHER_INFO, *LPPRINT_OTHER_INFO;
typedef struct _USER_OTHER_INFO { DWORD alrtus_errcode; DWORD alrtus_numstrings; }USER_OTHER_INFO, *PUSER_OTHER_INFO, *LPUSER_OTHER_INFO;
// // Special Values and Constants //
// // Name of mailslot to send alert notifications // #define ALERTER_MAILSLOT L"\\\\.\\MAILSLOT\\Alerter"
// // The following macro gives a pointer to the other_info data. // It takes an alert structure and returns a pointer to structure // beyond the standard portion. //
#define ALERT_OTHER_INFO(x) ((LPBYTE)(x) + sizeof(STD_ALERT))
// // The following macro gives a pointer to the variable-length data. // It takes a pointer to one of the other-info structs and returns a // pointer to the variable data portion. //
#define ALERT_VAR_DATA(p) ((LPBYTE)(p) + sizeof(*p))
// // Names of standard Microsoft-defined alert events. //
#define ALERT_PRINT_EVENT L"PRINTING" #define ALERT_MESSAGE_EVENT L"MESSAGE" #define ALERT_ERRORLOG_EVENT L"ERRORLOG" #define ALERT_ADMIN_EVENT L"ADMIN" #define ALERT_USER_EVENT L"USER"
// // Bitmap masks for prjob_status field of PRINTJOB. //
// 2-7 bits also used in device status
#define PRJOB_QSTATUS 0x3 // Bits 0,1 #define PRJOB_DEVSTATUS 0x1fc // 2-8 bits #define PRJOB_COMPLETE 0x4 // Bit 2 #define PRJOB_INTERV 0x8 // Bit 3 #define PRJOB_ERROR 0x10 // Bit 4 #define PRJOB_DESTOFFLINE 0x20 // Bit 5 #define PRJOB_DESTPAUSED 0x40 // Bit 6 #define PRJOB_NOTIFY 0x80 // BIT 7 #define PRJOB_DESTNOPAPER 0x100 // BIT 8 #define PRJOB_DELETED 0x8000 // BIT 15
// // Values of PRJOB_QSTATUS bits in prjob_status field of PRINTJOB. //
#define PRJOB_QS_QUEUED 0 #define PRJOB_QS_PAUSED 1 #define PRJOB_QS_SPOOLING 2 #define PRJOB_QS_PRINTING 3
#ifdef __cplusplus } #endif
#endif // _ALERT_
|