mirror of
https://github.com/reactos/reactos.git
synced 2024-12-26 00:54:40 +00:00
a6d6844e8a
Is anybody doing any work on the OS/2 support? svn path=/trunk/; revision=3946
12603 lines
344 KiB
C
12603 lines
344 KiB
C
/* os2emx.h (emx+gcc) */
|
|
|
|
#ifndef _OS2EMX_H
|
|
#define _OS2EMX_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif /* __cplusplus */
|
|
|
|
#pragma pack(1)
|
|
|
|
/* ------------------------ INCL_ SYMBOLS --------------------------------- */
|
|
|
|
#if defined (INCL_BASE)
|
|
#define INCL_DOS
|
|
#define INCL_DOSERRORS
|
|
#define INCL_SUB
|
|
#endif
|
|
|
|
#if defined (INCL_DOS)
|
|
#define INCL_DOSDATETIME
|
|
#define INCL_DOSDEVICES
|
|
#define INCL_DOSEXCEPTIONS
|
|
#define INCL_DOSFILEMGR
|
|
#define INCL_DOSMEMMGR
|
|
#define INCL_DOSMISC
|
|
#define INCL_DOSMVDM
|
|
#define INCL_DOSMODULEMGR
|
|
#define INCL_DOSNLS
|
|
#define INCL_DOSPROCESS
|
|
#define INCL_DOSPROFILE
|
|
#define INCL_DOSRAS
|
|
#define INCL_DOSQUEUES
|
|
#define INCL_DOSRESOURCES
|
|
#define INCL_DOSSEMAPHORES
|
|
#define INCL_DOSSESMGR
|
|
#endif
|
|
|
|
#if defined (INCL_REXXSAA)
|
|
#define INCL_RXSUBCOM
|
|
#define INCL_RXSHV
|
|
#define INCL_RXFUNC
|
|
#define INCL_RXSYSEXIT
|
|
#define INCL_RXMACRO
|
|
#define INCL_RXARI
|
|
#endif
|
|
|
|
#if defined (INCL_SUB)
|
|
#define INCL_KBD
|
|
#define INCL_VIO
|
|
#define INCL_MOU
|
|
#endif
|
|
|
|
#if defined (INCL_PM)
|
|
#define INCL_AVIO
|
|
#define INCL_FONTFILEFORMAT
|
|
#define INCL_GPI
|
|
#define INCL_SPL
|
|
#define INCL_WIN
|
|
#define INCL_WINWORKPLACE
|
|
#endif
|
|
|
|
#if defined (INCL_WIN) || defined (RC_INVOKED)
|
|
#define INCL_WINACCELERATORS
|
|
#define INCL_WINBUTTONS
|
|
#define INCL_WINDIALOGS
|
|
#define INCL_WINENTRYFIELDS
|
|
#define INCL_WINFRAMECTLS
|
|
#define INCL_WINFRAMEMGR
|
|
#define INCL_WINHELP
|
|
#define INCL_WININPUT
|
|
#define INCL_WINLISTBOXES
|
|
#define INCL_WINMENUS
|
|
#define INCL_WINMESSAGEMGR
|
|
#define INCL_WINMLE
|
|
#define INCL_WINPOINTERS
|
|
#define INCL_WINSCROLLBARS
|
|
#define INCL_WINSTATICS
|
|
#define INCL_WINSTDDLGS
|
|
#define INCL_WINSYS
|
|
#endif /* INCL_WIN || RC_INVOKED */
|
|
|
|
#if defined (INCL_WIN)
|
|
#define INCL_WINATOM
|
|
#define INCL_WINCLIPBOARD
|
|
#define INCL_WINCOUNTRY
|
|
#define INCL_WINCURSORS
|
|
#define INCL_WINDDE
|
|
#define INCL_WINDESKTOP
|
|
#define INCL_WINERRORS
|
|
#define INCL_WINHOOKS
|
|
#define INCL_WINLOAD
|
|
#define INCL_WINPALETTE
|
|
#define INCL_WINPROGRAMLIST
|
|
#define INCL_WINRECTANGLES
|
|
#define INCL_WINSHELLDATA
|
|
#define INCL_WINSWITCHLIST
|
|
#define INCL_WINTHUNKAPI
|
|
#define INCL_WINTIMER
|
|
#define INCL_WINTRACKRECT
|
|
#define INCL_WINTYPES
|
|
#define INCL_WINWINDOWMGR
|
|
#endif /* INCL_WIN */
|
|
|
|
#if defined (INCL_WINCOMMON)
|
|
#define INCL_WINWINDOWMGR
|
|
#endif
|
|
|
|
#if defined (INCL_WINSTDDLGS)
|
|
#define INCL_WINCIRCULARSLIDER
|
|
#define INCL_WINSTDBOOK
|
|
#define INCL_WINSTDCNR
|
|
#define INCL_WINSTDDRAG
|
|
#define INCL_WINSTDFILE
|
|
#define INCL_WINSTDFONT
|
|
#define INCL_WINSTDSLIDER
|
|
#define INCL_WINSTDSPIN
|
|
#define INCL_WINSTDVALSET
|
|
#endif
|
|
|
|
#if defined (INCL_WINSTDCNR) || defined (INCL_WINSTDVALSET)
|
|
#define INCL_WINSTDDRAG
|
|
#endif
|
|
|
|
#if defined (INCL_WINMLE) && !defined (INCL_WINENTRYFIELDS)
|
|
#define INCL_WINENTRYFIELDS
|
|
#endif
|
|
|
|
#if defined (INCL_WINWORKPLACE)
|
|
#define INCL_WPCLASS
|
|
#endif
|
|
|
|
#if defined (INCL_GPI)
|
|
#define INCL_GPIBITMAPS
|
|
#define INCL_GPICONTROL
|
|
#define INCL_GPICORRELATION
|
|
#define INCL_GPIINK
|
|
#define INCL_GPISEGMENTS
|
|
#endif
|
|
|
|
#if defined (INCL_ERRORS)
|
|
#define INCL_DOSERRORS
|
|
#define INCL_GPIERRORS
|
|
#define INCL_SHLERRORS
|
|
#define INCL_WINERRORS
|
|
#endif
|
|
|
|
#if defined (INCL_DDIDEFS)
|
|
#define INCL_GPIBITMAPS
|
|
#define INCL_GPIERRORS
|
|
#endif
|
|
|
|
#if defined (INCL_CIRCULARSLIDER) && !defined (INCL_WINCIRCULARSLIDER)
|
|
#define INCL_WINCIRCULARSLIDER
|
|
#endif
|
|
|
|
/* ------------------------ DISABLE KEYWORDS ------------------------------ */
|
|
|
|
#define APIENTRY
|
|
#define EXPENTRY
|
|
#define FAR
|
|
|
|
/* ------------------------ CONSTANTS AND TYPES --------------------------- */
|
|
|
|
#if !defined (FALSE)
|
|
#define FALSE 0
|
|
#endif
|
|
|
|
#if !defined (TRUE)
|
|
#define TRUE 1
|
|
#endif
|
|
|
|
#define VOID void
|
|
|
|
#define NULLHANDLE ((LHANDLE)0)
|
|
#define NULLSHANDLE ((SHANDLE)0)
|
|
|
|
#if !defined (NULL)
|
|
#if defined (__cplusplus)
|
|
#define NULL 0
|
|
#else
|
|
#define NULL ((void *)0)
|
|
#endif
|
|
#endif
|
|
|
|
typedef int INT; /* Required for Toolkit sample programs */
|
|
typedef unsigned UINT;
|
|
typedef unsigned long APIRET;
|
|
|
|
typedef unsigned long BOOL;
|
|
typedef BOOL *PBOOL;
|
|
|
|
typedef unsigned long BOOL32;
|
|
typedef BOOL *PBOOL32;
|
|
|
|
typedef char CHAR;
|
|
typedef CHAR *PCHAR;
|
|
|
|
#if !defined (OS2EMX_PLAIN_CHAR)
|
|
|
|
typedef unsigned char BYTE;
|
|
typedef unsigned char *PCH;
|
|
typedef unsigned char *PSZ;
|
|
typedef __const__ unsigned char *PCCH;
|
|
typedef __const__ unsigned char *PCSZ;
|
|
|
|
#else
|
|
|
|
typedef char BYTE;
|
|
typedef char *PCH;
|
|
typedef char *PSZ;
|
|
typedef __const__ char *PCCH;
|
|
typedef __const__ char *PCSZ;
|
|
|
|
#endif
|
|
|
|
typedef BYTE *PBYTE;
|
|
|
|
typedef unsigned char UCHAR;
|
|
typedef UCHAR *PUCHAR;
|
|
|
|
typedef short SHORT;
|
|
typedef SHORT *PSHORT;
|
|
|
|
typedef unsigned short USHORT;
|
|
typedef USHORT *PUSHORT;
|
|
|
|
typedef long LONG;
|
|
typedef LONG *PLONG;
|
|
|
|
typedef unsigned long ULONG;
|
|
typedef ULONG *PULONG;
|
|
|
|
typedef VOID *PVOID;
|
|
typedef PVOID *PPVOID;
|
|
|
|
typedef __const__ VOID *CPVOID;
|
|
|
|
typedef CHAR STR8[8];
|
|
typedef STR8 *PSTR8;
|
|
|
|
typedef CHAR STR16[16];
|
|
typedef STR16 *PSTR16;
|
|
typedef CHAR STR32[32];
|
|
typedef STR32 *PSTR32;
|
|
typedef CHAR STR64[64];
|
|
typedef STR64 *PSTR64;
|
|
|
|
typedef unsigned short SHANDLE;
|
|
typedef unsigned long LHANDLE;
|
|
|
|
typedef LHANDLE HPIPE;
|
|
typedef HPIPE *PHPIPE;
|
|
|
|
typedef LHANDLE HQUEUE;
|
|
typedef HQUEUE *PHQUEUE;
|
|
|
|
typedef LHANDLE HMODULE;
|
|
typedef HMODULE *PHMODULE;
|
|
|
|
typedef VOID *HSEM;
|
|
typedef HSEM *PHSEM;
|
|
|
|
typedef LHANDLE HOBJECT;
|
|
|
|
typedef ULONG PID;
|
|
typedef PID *PPID;
|
|
|
|
typedef ULONG TID;
|
|
typedef TID *PTID;
|
|
|
|
typedef int (*PFN)();
|
|
typedef PFN *PPFN;
|
|
|
|
typedef USHORT SEL;
|
|
typedef SEL *PSEL;
|
|
|
|
typedef ULONG HMTX;
|
|
typedef HMTX *PHMTX;
|
|
|
|
typedef ULONG HMUX;
|
|
typedef HMUX *PHMUX;
|
|
|
|
|
|
#define FIELDOFFSET(t,f) ((SHORT)&(((t *)0)->f))
|
|
|
|
#define MAKETYPE(v,t) (*((t *)&v))
|
|
|
|
#define MAKEUSHORT(l,h) (((USHORT)(l)) | ((USHORT)(h))<<8)
|
|
#define MAKESHORT(l,h) ((SHORT)MAKEUSHORT(l, h))
|
|
|
|
#define MAKEULONG(l,h) ((ULONG)(((USHORT)(l)) | ((ULONG)((USHORT)(h)))<<16))
|
|
#define MAKELONG(l,h) ((LONG)MAKEULONG(l, h))
|
|
|
|
#define LOUCHAR(w) ((UCHAR)(w))
|
|
#define HIUCHAR(w) ((UCHAR)((USHORT)(w)>>8))
|
|
|
|
#define LOBYTE(x) LOUCHAR(x)
|
|
#define HIBYTE(x) HIUCHAR(x)
|
|
|
|
#define LOUSHORT(x) ((USHORT)((ULONG)(x)))
|
|
#define HIUSHORT(x) ((USHORT)((ULONG)(x)>>16))
|
|
|
|
/* ---------------------------- ERROR CODES ------------------------------- */
|
|
|
|
#define WINERR_BASE 0x1000
|
|
#define GPIERR_BASE 0x2000
|
|
#define DEVERR_BASE 0x3000
|
|
#define SPLERR_BASE 0x4000
|
|
|
|
#define SEVERITY_NOERROR 0x0000
|
|
#define SEVERITY_WARNING 0x0004
|
|
#define SEVERITY_ERROR 0x0008
|
|
#define SEVERITY_SEVERE 0x000c
|
|
#define SEVERITY_UNRECOVERABLE 0x0010
|
|
|
|
#if defined (INCL_DOSERRORS)
|
|
|
|
#define NO_ERROR 0
|
|
#define ERROR_INVALID_FUNCTION 1
|
|
#define ERROR_FILE_NOT_FOUND 2
|
|
#define ERROR_PATH_NOT_FOUND 3
|
|
#define ERROR_TOO_MANY_OPEN_FILES 4
|
|
#define ERROR_ACCESS_DENIED 5
|
|
#define ERROR_INVALID_HANDLE 6
|
|
#define ERROR_ARENA_TRASHED 7
|
|
#define ERROR_NOT_ENOUGH_MEMORY 8
|
|
#define ERROR_INVALID_BLOCK 9
|
|
#define ERROR_BAD_ENVIRONMENT 10
|
|
#define ERROR_BAD_FORMAT 11
|
|
#define ERROR_INVALID_ACCESS 12
|
|
#define ERROR_INVALID_DATA 13
|
|
#define ERROR_INVALID_DRIVE 15
|
|
#define ERROR_CURRENT_DIRECTORY 16
|
|
#define ERROR_NOT_SAME_DEVICE 17
|
|
#define ERROR_NO_MORE_FILES 18
|
|
#define ERROR_WRITE_PROTECT 19
|
|
#define ERROR_BAD_UNIT 20
|
|
#define ERROR_NOT_READY 21
|
|
#define ERROR_BAD_COMMAND 22
|
|
#define ERROR_CRC 23
|
|
#define ERROR_BAD_LENGTH 24
|
|
#define ERROR_SEEK 25
|
|
#define ERROR_NOT_DOS_DISK 26
|
|
#define ERROR_SECTOR_NOT_FOUND 27
|
|
#define ERROR_OUT_OF_PAPER 28
|
|
#define ERROR_WRITE_FAULT 29
|
|
#define ERROR_READ_FAULT 30
|
|
#define ERROR_GEN_FAILURE 31
|
|
#define ERROR_SHARING_VIOLATION 32
|
|
#define ERROR_LOCK_VIOLATION 33
|
|
#define ERROR_WRONG_DISK 34
|
|
#define ERROR_FCB_UNAVAILABLE 35
|
|
#define ERROR_SHARING_BUFFER_EXCEEDED 36
|
|
#define ERROR_CODE_PAGE_MISMATCHED 37
|
|
#define ERROR_HANDLE_EOF 38
|
|
#define ERROR_HANDLE_DISK_FULL 39
|
|
#define ERROR_NOT_SUPPORTED 50
|
|
#define ERROR_REM_NOT_LIST 51
|
|
#define ERROR_DUP_NAME 52
|
|
#define ERROR_BAD_NETPATH 53
|
|
#define ERROR_NETWORK_BUSY 54
|
|
#define ERROR_DEV_NOT_EXIST 55
|
|
#define ERROR_TOO_MANY_CMDS 56
|
|
#define ERROR_ADAP_HDW_ERR 57
|
|
#define ERROR_BAD_NET_RESP 58
|
|
#define ERROR_UNEXP_NET_ERR 59
|
|
#define ERROR_BAD_REM_ADAP 60
|
|
#define ERROR_PRINTQ_FULL 61
|
|
#define ERROR_NO_SPOOL_SPACE 62
|
|
#define ERROR_PRINT_CANCELLED 63
|
|
#define ERROR_NETNAME_DELETED 64
|
|
#define ERROR_NETWORK_ACCESS_DENIED 65
|
|
#define ERROR_BAD_DEV_TYPE 66
|
|
#define ERROR_BAD_NET_NAME 67
|
|
#define ERROR_TOO_MANY_NAMES 68
|
|
#define ERROR_TOO_MANY_SESS 69
|
|
#define ERROR_SHARING_PAUSED 70
|
|
#define ERROR_REQ_NOT_ACCEP 71
|
|
#define ERROR_REDIR_PAUSED 72
|
|
#define ERROR_SBCS_ATT_WRITE_PROT 73
|
|
#define ERROR_SBCS_GENERAL_FAILURE 74
|
|
#define ERROR_XGA_OUT_MEMORY 75
|
|
#define ERROR_FILE_EXISTS 80
|
|
#define ERROR_DUP_FCB 81
|
|
#define ERROR_CANNOT_MAKE 82
|
|
#define ERROR_FAIL_I24 83
|
|
#define ERROR_OUT_OF_STRUCTURES 84
|
|
#define ERROR_ALREADY_ASSIGNED 85
|
|
#define ERROR_INVALID_PASSWORD 86
|
|
#define ERROR_INVALID_PARAMETER 87
|
|
#define ERROR_NET_WRITE_FAULT 88
|
|
#define ERROR_NO_PROC_SLOTS 89
|
|
#define ERROR_NOT_FROZEN 90
|
|
#define ERROR_SYS_COMP_NOT_LOADED 90 /*!*/
|
|
#define ERR_TSTOVFL 91
|
|
#define ERR_TSTDUP 92
|
|
#define ERROR_NO_ITEMS 93
|
|
#define ERROR_INTERRUPT 95
|
|
#define ERROR_DEVICE_IN_USE 99
|
|
#define ERROR_TOO_MANY_SEMAPHORES 100
|
|
#define ERROR_EXCL_SEM_ALREADY_OWNED 101
|
|
#define ERROR_SEM_IS_SET 102
|
|
#define ERROR_TOO_MANY_SEM_REQUESTS 103
|
|
#define ERROR_INVALID_AT_INTERRUPT_TIME 104
|
|
#define ERROR_SEM_OWNER_DIED 105
|
|
#define ERROR_SEM_USER_LIMIT 106
|
|
#define ERROR_DISK_CHANGE 107
|
|
#define ERROR_DRIVE_LOCKED 108
|
|
#define ERROR_BROKEN_PIPE 109
|
|
#define ERROR_OPEN_FAILED 110
|
|
#define ERROR_BUFFER_OVERFLOW 111
|
|
#define ERROR_DISK_FULL 112
|
|
#define ERROR_NO_MORE_SEARCH_HANDLES 113
|
|
#define ERROR_INVALID_TARGET_HANDLE 114
|
|
#define ERROR_PROTECTION_VIOLATION 115
|
|
#define ERROR_VIOKBD_REQUEST 116
|
|
#define ERROR_INVALID_CATEGORY 117
|
|
#define ERROR_INVALID_VERIFY_SWITCH 118
|
|
#define ERROR_BAD_DRIVER_LEVEL 119
|
|
#define ERROR_CALL_NOT_IMPLEMENTED 120
|
|
#define ERROR_SEM_TIMEOUT 121
|
|
#define ERROR_INSUFFICIENT_BUFFER 122
|
|
#define ERROR_INVALID_NAME 123
|
|
#define ERROR_INVALID_LEVEL 124
|
|
#define ERROR_NO_VOLUME_LABEL 125
|
|
#define ERROR_MOD_NOT_FOUND 126
|
|
#define ERROR_PROC_NOT_FOUND 127
|
|
#define ERROR_WAIT_NO_CHILDREN 128
|
|
#define ERROR_CHILD_NOT_COMPLETE 129
|
|
#define ERROR_DIRECT_ACCESS_HANDLE 130
|
|
#define ERROR_NEGATIVE_SEEK 131
|
|
#define ERROR_SEEK_ON_DEVICE 132
|
|
#define ERROR_IS_JOIN_TARGET 133
|
|
#define ERROR_IS_JOINED 134
|
|
#define ERROR_IS_SUBSTED 135
|
|
#define ERROR_NOT_JOINED 136
|
|
#define ERROR_NOT_SUBSTED 137
|
|
#define ERROR_JOIN_TO_JOIN 138
|
|
#define ERROR_SUBST_TO_SUBST 139
|
|
#define ERROR_JOIN_TO_SUBST 140
|
|
#define ERROR_SUBST_TO_JOIN 141
|
|
#define ERROR_BUSY_DRIVE 142
|
|
#define ERROR_SAME_DRIVE 143
|
|
#define ERROR_DIR_NOT_ROOT 144
|
|
#define ERROR_DIR_NOT_EMPTY 145
|
|
#define ERROR_IS_SUBST_PATH 146
|
|
#define ERROR_IS_JOIN_PATH 147
|
|
#define ERROR_PATH_BUSY 148
|
|
#define ERROR_IS_SUBST_TARGET 149
|
|
#define ERROR_SYSTEM_TRACE 150
|
|
#define ERROR_INVALID_EVENT_COUNT 151
|
|
#define ERROR_TOO_MANY_MUXWAITERS 152
|
|
#define ERROR_INVALID_LIST_FORMAT 153
|
|
#define ERROR_LABEL_TOO_LONG 154
|
|
#define ERROR_TOO_MANY_TCBS 155
|
|
#define ERROR_SIGNAL_REFUSED 156
|
|
#define ERROR_DISCARDED 157
|
|
#define ERROR_NOT_LOCKED 158
|
|
#define ERROR_BAD_THREADID_ADDR 159
|
|
#define ERROR_BAD_ARGUMENTS 160
|
|
#define ERROR_BAD_PATHNAME 161
|
|
#define ERROR_SIGNAL_PENDING 162
|
|
#define ERROR_UNCERTAIN_MEDIA 163
|
|
#define ERROR_MAX_THRDS_REACHED 164
|
|
#define ERROR_MONITORS_NOT_SUPPORTED 165
|
|
#define ERROR_UNC_DRIVER_NOT_INSTALLED 166
|
|
#define ERROR_LOCK_FAILED 167
|
|
#define ERROR_SWAPIO_FAILED 168
|
|
#define ERROR_SWAPIN_FAILED 169
|
|
#define ERROR_BUSY 170
|
|
#define ERROR_CANCEL_VIOLATION 173
|
|
#define ERROR_ATOMIC_LOCK_NOT_SUPPORTED 174
|
|
#define ERROR_READ_LOCKS_NOT_SUPPORTED 175
|
|
#define ERROR_INVALID_SEGMENT_NUMBER 180
|
|
#define ERROR_INVALID_CALLGATE 181
|
|
#define ERROR_INVALID_ORDINAL 182
|
|
#define ERROR_ALREADY_EXISTS 183
|
|
#define ERROR_NO_CHILD_PROCESS 184
|
|
#define ERROR_CHILD_ALIVE_NOWAIT 185
|
|
#define ERROR_INVALID_FLAG_NUMBER 186
|
|
#define ERROR_SEM_NOT_FOUND 187
|
|
#define ERROR_INVALID_STARTING_CODESEG 188
|
|
#define ERROR_INVALID_STACKSEG 189
|
|
#define ERROR_INVALID_MODULETYPE 190
|
|
#define ERROR_INVALID_EXE_SIGNATURE 191
|
|
#define ERROR_EXE_MARKED_INVALID 192
|
|
#define ERROR_BAD_EXE_FORMAT 193
|
|
#define ERROR_ITERATED_DATA_EXCEEDS_64K 194
|
|
#define ERROR_INVALID_MINALLOCSIZE 195
|
|
#define ERROR_DYNLINK_FROM_INVALID_RING 196
|
|
#define ERROR_IOPL_NOT_ENABLED 197
|
|
#define ERROR_INVALID_SEGDPL 198
|
|
#define ERROR_AUTODATASEG_EXCEEDS_64K 199
|
|
#define ERROR_RING2SEG_MUST_BE_MOVABLE 200
|
|
#define ERROR_RELOCSRC_CHAIN_EXCEEDS_SEGLIMIT 201
|
|
#define ERROR_INFLOOP_IN_RELOC_CHAIN 202
|
|
#define ERROR_ENVVAR_NOT_FOUND 203
|
|
#define ERROR_NOT_CURRENT_CTRY 204
|
|
#define ERROR_NO_SIGNAL_SENT 205
|
|
#define ERROR_FILENAME_EXCED_RANGE 206
|
|
#define ERROR_RING2_STACK_IN_USE 207
|
|
#define ERROR_META_EXPANSION_TOO_LONG 208
|
|
#define ERROR_INVALID_SIGNAL_NUMBER 209
|
|
#define ERROR_THREAD_1_INACTIVE 210
|
|
#define ERROR_INFO_NOT_AVAIL 211
|
|
#define ERROR_LOCKED 212
|
|
#define ERROR_BAD_DYNALINK 213
|
|
#define ERROR_TOO_MANY_MODULES 214
|
|
#define ERROR_NESTING_NOT_ALLOWED 215
|
|
#define ERROR_CANNOT_SHRINK 216
|
|
#define ERROR_ZOMBIE_PROCESS 217
|
|
#define ERROR_STACK_IN_HIGH_MEMORY 218
|
|
#define ERROR_INVALID_EXITROUTINE_RING 219
|
|
#define ERROR_GETBUF_FAILED 220
|
|
#define ERROR_FLUSHBUF_FAILED 221
|
|
#define ERROR_TRANSFER_TOO_LONG 222
|
|
#define ERROR_FORCENOSWAP_FAILED 223
|
|
#define ERROR_SMG_NO_TARGET_WINDOW 224
|
|
#define ERROR_NO_CHILDREN 228
|
|
#define ERROR_INVALID_SCREEN_GROUP 229
|
|
#define ERROR_BAD_PIPE 230
|
|
#define ERROR_PIPE_BUSY 231
|
|
#define ERROR_NO_DATA 232
|
|
#define ERROR_PIPE_NOT_CONNECTED 233
|
|
#define ERROR_MORE_DATA 234
|
|
#define ERROR_VC_DISCONNECTED 240
|
|
#define ERROR_CIRCULARITY_REQUESTED 250
|
|
#define ERROR_DIRECTORY_IN_CDS 251
|
|
#define ERROR_INVALID_FSD_NAME 252
|
|
#define ERROR_INVALID_PATH 253
|
|
#define ERROR_INVALID_EA_NAME 254
|
|
#define ERROR_EA_LIST_INCONSISTENT 255
|
|
#define ERROR_EA_LIST_TOO_LONG 256
|
|
#define ERROR_NO_META_MATCH 257
|
|
#define ERROR_FINDNOTIFY_TIMEOUT 258
|
|
#define ERROR_NO_MORE_ITEMS 259
|
|
#define ERROR_SEARCH_STRUC_REUSED 260
|
|
#define ERROR_CHAR_NOT_FOUND 261
|
|
#define ERROR_TOO_MUCH_STACK 262
|
|
#define ERROR_INVALID_ATTR 263
|
|
#define ERROR_INVALID_STARTING_RING 264
|
|
#define ERROR_INVALID_DLL_INIT_RING 265
|
|
#define ERROR_CANNOT_COPY 266
|
|
#define ERROR_DIRECTORY 267
|
|
#define ERROR_OPLOCKED_FILE 268
|
|
#define ERROR_OPLOCK_THREAD_EXISTS 269
|
|
#define ERROR_VOLUME_CHANGED 270
|
|
#define ERROR_FINDNOTIFY_HANDLE_IN_USE 271
|
|
#define ERROR_FINDNOTIFY_HANDLE_CLOSED 272
|
|
#define ERROR_NOTIFY_OBJECT_REMOVED 273
|
|
#define ERROR_ALREADY_SHUTDOWN 274
|
|
#define ERROR_EAS_DIDNT_FIT 275
|
|
#define ERROR_EA_FILE_CORRUPT 276
|
|
#define ERROR_EA_TABLE_FULL 277
|
|
#define ERROR_INVALID_EA_HANDLE 278
|
|
#define ERROR_NO_CLUSTER 279
|
|
#define ERROR_CREATE_EA_FILE 280
|
|
#define ERROR_CANNOT_OPEN_EA_FILE 281
|
|
#define ERROR_EAS_NOT_SUPPORTED 282
|
|
#define ERROR_NEED_EAS_FOUND 283
|
|
#define ERROR_DUPLICATE_HANDLE 284
|
|
#define ERROR_DUPLICATE_NAME 285
|
|
#define ERROR_EMPTY_MUXWAIT 286
|
|
#define ERROR_MUTEX_OWNED 287
|
|
#define ERROR_NOT_OWNER 288
|
|
#define ERROR_PARAM_TOO_SMALL 289
|
|
#define ERROR_TOO_MANY_HANDLES 290
|
|
#define ERROR_TOO_MANY_OPENS 291
|
|
#define ERROR_WRONG_TYPE 292
|
|
#define ERROR_UNUSED_CODE 293
|
|
#define ERROR_THREAD_NOT_TERMINATED 294
|
|
#define ERROR_INIT_ROUTINE_FAILED 295
|
|
#define ERROR_MODULE_IN_USE 296
|
|
#define ERROR_NOT_ENOUGH_WATCHPOINTS 297
|
|
#define ERROR_TOO_MANY_POSTS 298
|
|
#define ERROR_ALREADY_POSTED 299
|
|
#define ERROR_ALREADY_RESET 300
|
|
#define ERROR_SEM_BUSY 301
|
|
#define ERROR_INVALID_PROCID 303
|
|
#define ERROR_INVALID_PDELTA 304
|
|
#define ERROR_NOT_DESCENDANT 305
|
|
#define ERROR_NOT_SESSION_MANAGER 306
|
|
#define ERROR_INVALID_PCLASS 307
|
|
#define ERROR_INVALID_SCOPE 308
|
|
#define ERROR_INVALID_THREADID 309
|
|
#define ERROR_DOSSUB_SHRINK 310
|
|
#define ERROR_DOSSUB_NOMEM 311
|
|
#define ERROR_DOSSUB_OVERLAP 312
|
|
#define ERROR_DOSSUB_BADSIZE 313
|
|
#define ERROR_DOSSUB_BADFLAG 314
|
|
#define ERROR_DOSSUB_BADSELECTOR 315
|
|
#define ERROR_MR_MSG_TOO_LONG 316
|
|
#define ERROR_MR_MID_NOT_FOUND 317
|
|
#define ERROR_MR_UN_ACC_MSGF 318
|
|
#define ERROR_MR_INV_MSGF_FORMAT 319
|
|
#define ERROR_MR_INV_IVCOUNT 320
|
|
#define ERROR_MR_UN_PERFORM 321
|
|
#define ERROR_TS_WAKEUP 322
|
|
#define ERROR_TS_SEMHANDLE 323
|
|
#define ERROR_TS_NOTIMER 324
|
|
#define ERROR_TS_HANDLE 326
|
|
#define ERROR_TS_DATETIME 327
|
|
#define ERROR_SYS_INTERNAL 328
|
|
#define ERROR_QUE_CURRENT_NAME 329
|
|
#define ERROR_QUE_PROC_NOT_OWNED 330
|
|
#define ERROR_QUE_PROC_OWNED 331
|
|
#define ERROR_QUE_DUPLICATE 332
|
|
#define ERROR_QUE_ELEMENT_NOT_EXIST 333
|
|
#define ERROR_QUE_NO_MEMORY 334
|
|
#define ERROR_QUE_INVALID_NAME 335
|
|
#define ERROR_QUE_INVALID_PRIORITY 336
|
|
#define ERROR_QUE_INVALID_HANDLE 337
|
|
#define ERROR_QUE_LINK_NOT_FOUND 338
|
|
#define ERROR_QUE_MEMORY_ERROR 339
|
|
#define ERROR_QUE_PREV_AT_END 340
|
|
#define ERROR_QUE_PROC_NO_ACCESS 341
|
|
#define ERROR_QUE_EMPTY 342
|
|
#define ERROR_QUE_NAME_NOT_EXIST 343
|
|
#define ERROR_QUE_NOT_INITIALIZED 344
|
|
#define ERROR_QUE_UNABLE_TO_ACCESS 345
|
|
#define ERROR_QUE_UNABLE_TO_ADD 346
|
|
#define ERROR_QUE_UNABLE_TO_INIT 347
|
|
#define ERROR_VIO_INVALID_MASK 349
|
|
#define ERROR_VIO_PTR 350
|
|
#define ERROR_VIO_APTR 351
|
|
#define ERROR_VIO_RPTR 352
|
|
#define ERROR_VIO_CPTR 353
|
|
#define ERROR_VIO_LPTR 354
|
|
#define ERROR_VIO_MODE 355
|
|
#define ERROR_VIO_WIDTH 356
|
|
#define ERROR_VIO_ATTR 357
|
|
#define ERROR_VIO_ROW 358
|
|
#define ERROR_VIO_COL 359
|
|
#define ERROR_VIO_TOPROW 360
|
|
#define ERROR_VIO_BOTROW 361
|
|
#define ERROR_VIO_RIGHTCOL 362
|
|
#define ERROR_VIO_LEFTCOL 363
|
|
#define ERROR_SCS_CALL 364
|
|
#define ERROR_SCS_VALUE 365
|
|
#define ERROR_VIO_WAIT_FLAG 366
|
|
#define ERROR_VIO_UNLOCK 367
|
|
#define ERROR_SGS_NOT_SESSION_MGR 368
|
|
#define ERROR_SMG_INVALID_SGID 369
|
|
#define ERROR_SMG_INVALID_SESSION_ID 369 /*!*/
|
|
#define ERROR_SMG_NOSG 370
|
|
#define ERROR_SMG_NO_SESSIONS 370 /*!*/
|
|
#define ERROR_SMG_GRP_NOT_FOUND 371
|
|
#define ERROR_SMG_SESSION_NOT_FOUND 371 /*!*/
|
|
#define ERROR_SMG_SET_TITLE 372
|
|
#define ERROR_KBD_PARAMETER 373
|
|
#define ERROR_KBD_NO_DEVICE 374
|
|
#define ERROR_KBD_INVALID_IOWAIT 375
|
|
#define ERROR_KBD_INVALID_LENGTH 376
|
|
#define ERROR_KBD_INVALID_ECHO_MASK 377
|
|
#define ERROR_KBD_INVALID_INPUT_MASK 378
|
|
#define ERROR_MON_INVALID_PARMS 379
|
|
#define ERROR_MON_INVALID_DEVNAME 380
|
|
#define ERROR_MON_INVALID_HANDLE 381
|
|
#define ERROR_MON_BUFFER_TOO_SMALL 382
|
|
#define ERROR_MON_BUFFER_EMPTY 383
|
|
#define ERROR_MON_DATA_TOO_LARGE 384
|
|
#define ERROR_MOUSE_NO_DEVICE 385
|
|
#define ERROR_MOUSE_INV_HANDLE 386
|
|
#define ERROR_MOUSE_INV_PARMS 387
|
|
#define ERROR_MOUSE_CANT_RESET 388
|
|
#define ERROR_MOUSE_DISPLAY_PARMS 389
|
|
#define ERROR_MOUSE_INV_MODULE 390
|
|
#define ERROR_MOUSE_INV_ENTRY_PT 391
|
|
#define ERROR_MOUSE_INV_MASK 392
|
|
#define NO_ERROR_MOUSE_NO_DATA 393
|
|
#define NO_ERROR_MOUSE_PTR_DRAWN 394
|
|
#define ERROR_INVALID_FREQUENCY 395
|
|
#define ERROR_NLS_NO_COUNTRY_FILE 396
|
|
#define ERROR_NLS_OPEN_FAILED 397
|
|
#define ERROR_NLS_NO_CTRY_CODE 398
|
|
#define ERROR_NLS_TABLE_TRUNCATED 399
|
|
#define ERROR_NLS_BAD_TYPE 400
|
|
#define ERROR_NLS_TYPE_NOT_FOUND 401
|
|
#define ERROR_VIO_SMG_ONLY 402
|
|
#define ERROR_VIO_INVALID_ASCIIZ 403
|
|
#define ERROR_VIO_DEREGISTER 404
|
|
#define ERROR_VIO_NO_POPUP 405
|
|
#define ERROR_VIO_EXISTING_POPUP 406
|
|
#define ERROR_KBD_SMG_ONLY 407
|
|
#define ERROR_KBD_INVALID_ASCIIZ 408
|
|
#define ERROR_KBD_INVALID_MASK 409
|
|
#define ERROR_KBD_REGISTER 410
|
|
#define ERROR_KBD_DEREGISTER 411
|
|
#define ERROR_MOUSE_SMG_ONLY 412
|
|
#define ERROR_MOUSE_INVALID_ASCIIZ 413
|
|
#define ERROR_MOUSE_INVALID_MASK 414
|
|
#define ERROR_MOUSE_REGISTER 415
|
|
#define ERROR_MOUSE_DEREGISTER 416
|
|
#define ERROR_SMG_BAD_ACTION 417
|
|
#define ERROR_SMG_INVALID_CALL 418
|
|
#define ERROR_SCS_SG_NOTFOUND 419
|
|
#define ERROR_SCS_NOT_SHELL 420
|
|
#define ERROR_VIO_INVALID_PARMS 421
|
|
#define ERROR_VIO_FUNCTION_OWNED 422
|
|
#define ERROR_VIO_RETURN 423
|
|
#define ERROR_SCS_INVALID_FUNCTION 424
|
|
#define ERROR_SCS_NOT_SESSION_MGR 425
|
|
#define ERROR_VIO_REGISTER 426
|
|
#define ERROR_VIO_NO_MODE_THREAD 427
|
|
#define ERROR_VIO_NO_SAVE_RESTORE_THD 428
|
|
#define ERROR_VIO_IN_BG 429
|
|
#define ERROR_VIO_ILLEGAL_DURING_POPUP 430
|
|
#define ERROR_SMG_NOT_BASESHELL 431
|
|
#define ERROR_SMG_BAD_STATUSREQ 432
|
|
#define ERROR_QUE_INVALID_WAIT 433
|
|
#define ERROR_VIO_LOCK 434
|
|
#define ERROR_MOUSE_INVALID_IOWAIT 435
|
|
#define ERROR_VIO_INVALID_HANDLE 436
|
|
#define ERROR_VIO_ILLEGAL_DURING_LOCK 437
|
|
#define ERROR_VIO_INVALID_LENGTH 438
|
|
#define ERROR_KBD_INVALID_HANDLE 439
|
|
#define ERROR_KBD_NO_MORE_HANDLE 440
|
|
#define ERROR_KBD_CANNOT_CREATE_KCB 441
|
|
#define ERROR_KBD_CODEPAGE_LOAD_INCOMPL 442
|
|
#define ERROR_KBD_INVALID_CODEPAGE_ID 443
|
|
#define ERROR_KBD_NO_CODEPAGE_SUPPORT 444
|
|
#define ERROR_KBD_FOCUS_REQUIRED 445
|
|
#define ERROR_KBD_FOCUS_ALREADY_ACTIVE 446
|
|
#define ERROR_KBD_KEYBOARD_BUSY 447
|
|
#define ERROR_KBD_INVALID_CODEPAGE 448
|
|
#define ERROR_KBD_UNABLE_TO_FOCUS 449
|
|
#define ERROR_SMG_SESSION_NON_SELECT 450
|
|
#define ERROR_SMG_SESSION_NOT_FOREGRND 451
|
|
#define ERROR_SMG_SESSION_NOT_PARENT 452
|
|
#define ERROR_SMG_INVALID_START_MODE 453
|
|
#define ERROR_SMG_INVALID_RELATED_OPT 454
|
|
#define ERROR_SMG_INVALID_BOND_OPTION 455
|
|
#define ERROR_SMG_INVALID_SELECT_OPT 456
|
|
#define ERROR_SMG_START_IN_BACKGROUND 457
|
|
#define ERROR_SMG_INVALID_STOP_OPTION 458
|
|
#define ERROR_SMG_BAD_RESERVE 459
|
|
#define ERROR_SMG_PROCESS_NOT_PARENT 460
|
|
#define ERROR_SMG_INVALID_DATA_LENGTH 461
|
|
#define ERROR_SMG_NOT_BOUND 462
|
|
#define ERROR_SMG_RETRY_SUB_ALLOC 463
|
|
#define ERROR_KBD_DETACHED 464
|
|
#define ERROR_VIO_DETACHED 465
|
|
#define ERROR_MOU_DETACHED 466
|
|
#define ERROR_VIO_FONT 467
|
|
#define ERROR_VIO_USER_FONT 468
|
|
#define ERROR_VIO_BAD_CP 469
|
|
#define ERROR_VIO_NO_CP 470
|
|
#define ERROR_VIO_NA_CP 471
|
|
#define ERROR_INVALID_CODE_PAGE 472
|
|
#define ERROR_CPLIST_TOO_SMALL 473
|
|
#define ERROR_CP_NOT_MOVED 474
|
|
#define ERROR_MODE_SWITCH_INIT 475
|
|
#define ERROR_CODE_PAGE_NOT_FOUND 476
|
|
#define ERROR_UNEXPECTED_SLOT_RETURNED 477
|
|
#define ERROR_SMG_INVALID_TRACE_OPTION 478
|
|
#define ERROR_VIO_INTERNAL_RESOURCE 479
|
|
#define ERROR_VIO_SHELL_INIT 480
|
|
#define ERROR_SMG_NO_HARD_ERRORS 481
|
|
#define ERROR_CP_SWITCH_INCOMPLETE 482
|
|
#define ERROR_VIO_TRANSPARENT_POPUP 483
|
|
#define ERROR_CRITSEC_OVERFLOW 484
|
|
#define ERROR_CRITSEC_UNDERFLOW 485
|
|
#define ERROR_VIO_BAD_RESERVE 486
|
|
#define ERROR_INVALID_ADDRESS 487
|
|
#define ERROR_ZERO_SELECTORS_REQUESTED 488
|
|
#define ERROR_NOT_ENOUGH_SELECTORS_AVA 489
|
|
#define ERROR_INVALID_SELECTOR 490
|
|
#define ERROR_SMG_INVALID_PROGRAM_TYPE 491
|
|
#define ERROR_SMG_INVALID_PGM_CONTROL 492
|
|
#define ERROR_SMG_INVALID_INHERIT_OPT 493
|
|
#define ERROR_VIO_EXTENDED_SG 494
|
|
#define ERROR_VIO_NOT_PRES_MGR_SG 495
|
|
#define ERROR_VIO_SHIELD_OWNED 496
|
|
#define ERROR_VIO_NO_MORE_HANDLES 497
|
|
#define ERROR_VIO_SEE_ERROR_LOG 498
|
|
#define ERROR_VIO_ASSOCIATED_DC 499
|
|
#define ERROR_KBD_NO_CONSOLE 500
|
|
#define ERROR_MOUSE_NO_CONSOLE 501
|
|
#define ERROR_MOUSE_INVALID_HANDLE 502
|
|
#define ERROR_SMG_INVALID_DEBUG_PARMS 503
|
|
#define ERROR_KBD_EXTENDED_SG 504
|
|
#define ERROR_MOU_EXTENDED_SG 505
|
|
#define ERROR_SMG_INVALID_ICON_FILE 506
|
|
#define ERROR_TRC_PID_NON_EXISTENT 507
|
|
#define ERROR_TRC_COUNT_ACTIVE 508
|
|
#define ERROR_TRC_SUSPENDED_BY_COUNT 509
|
|
#define ERROR_TRC_COUNT_INACTIVE 510
|
|
#define ERROR_TRC_COUNT_REACHED 511
|
|
#define ERROR_NO_MC_TRACE 512
|
|
#define ERROR_MC_TRACE 513
|
|
#define ERROR_TRC_COUNT_ZERO 514
|
|
#define ERROR_SMG_TOO_MANY_DDS 515
|
|
#define ERROR_SMG_INVALID_NOTIFICATION 516
|
|
#define ERROR_LF_INVALID_FUNCTION 517
|
|
#define ERROR_LF_NOT_AVAIL 518
|
|
#define ERROR_LF_SUSPENDED 519
|
|
#define ERROR_LF_BUF_TOO_SMALL 520
|
|
#define ERROR_LF_BUFFER_CORRUPTED 521
|
|
#define ERROR_LF_BUFFER_FULL 521 /*!*/
|
|
#define ERROR_LF_INVALID_DAEMON 522
|
|
#define ERROR_LF_INVALID_RECORD 522 /*!*/
|
|
#define ERROR_LF_INVALID_TEMPL 523
|
|
#define ERROR_LF_INVALID_SERVICE 523 /*!*/
|
|
#define ERROR_LF_GENERAL_FAILURE 524
|
|
#define ERROR_LF_INVALID_ID 525
|
|
#define ERROR_LF_INVALID_HANDLE 526
|
|
#define ERROR_LF_NO_ID_AVAIL 527
|
|
#define ERROR_LF_TEMPLATE_AREA_FULL 528
|
|
#define ERROR_LF_ID_IN_USE 529
|
|
#define ERROR_MOU_NOT_INITIALIZED 530
|
|
#define ERROR_MOUINITREAL_DONE 531
|
|
#define ERROR_DOSSUB_CORRUPTED 532
|
|
#define ERROR_MOUSE_CALLER_NOT_SUBSYS 533
|
|
#define ERROR_ARITHMETIC_OVERFLOW 534
|
|
#define ERROR_TMR_NO_DEVICE 535
|
|
#define ERROR_TMR_INVALID_TIME 536
|
|
#define ERROR_PVW_INVALID_ENTITY 537
|
|
#define ERROR_PVW_INVALID_ENTITY_TYPE 538
|
|
#define ERROR_PVW_INVALID_SPEC 539
|
|
#define ERROR_PVW_INVALID_RANGE_TYPE 540
|
|
#define ERROR_PVW_INVALID_COUNTER_BLK 541
|
|
#define ERROR_PVW_INVALID_TEXT_BLK 542
|
|
#define ERROR_PRF_NOT_INITIALIZED 543
|
|
#define ERROR_PRF_ALREADY_INITIALIZED 544
|
|
#define ERROR_PRF_NOT_STARTED 545
|
|
#define ERROR_PRF_ALREADY_STARTED 546
|
|
#define ERROR_PRF_TIMER_OUT_OF_RANGE 547
|
|
#define ERROR_PRF_TIMER_RESET 548
|
|
#define ERROR_VDD_LOCK_USEAGE_DENIED 639
|
|
#define ERROR_TIMEOUT 640
|
|
#define ERROR_VDM_DOWN 641
|
|
#define ERROR_VDM_LIMIT 642
|
|
#define ERROR_VDD_NOT_FOUND 643
|
|
#define ERROR_INVALID_CALLER 644
|
|
#define ERROR_PID_MISMATCH 645
|
|
#define ERROR_INVALID_VDD_HANDLE 646
|
|
#define ERROR_VLPT_NO_SPOOLER 647
|
|
#define ERROR_VCOM_DEVICE_BUSY 648
|
|
#define ERROR_VLPT_DEVICE_BUSY 649
|
|
#define ERROR_NESTING_TOO_DEEP 650
|
|
#define ERROR_VDD_MISSING 651
|
|
#define ERROR_BIDI_INVALID_LENGTH 671
|
|
#define ERROR_BIDI_INVALID_INCREMENT 672
|
|
#define ERROR_BIDI_INVALID_COMBINATION 673
|
|
#define ERROR_BIDI_INVALID_RESERVED 674
|
|
#define ERROR_BIDI_INVALID_EFFECT 675
|
|
#define ERROR_BIDI_INVALID_CSDREC 676
|
|
#define ERROR_BIDI_INVALID_CSDSTATE 677
|
|
#define ERROR_BIDI_INVALID_LEVEL 678
|
|
#define ERROR_BIDI_INVALID_TYPE_SUPPORT 679
|
|
#define ERROR_BIDI_INVALID_ORIENTATION 680
|
|
#define ERROR_BIDI_INVALID_NUM_SHAPE 681
|
|
#define ERROR_BIDI_INVALID_CSD 682
|
|
#define ERROR_BIDI_NO_SUPPORT 683
|
|
#define NO_ERROR_BIDI_RW_INCOMPLETE 684
|
|
#define ERROR_IMP_INVALID_PARM 691
|
|
#define ERROR_IMP_INVALID_LENGTH 692
|
|
#define ERROR_MON_BAD_BUFFER 730
|
|
#define ERROR_MODULE_CORRUPTED 731
|
|
#define ERROR_SM_OUTOF_SWAPFILE 1477
|
|
#define ERROR_LF_TIMEOUT 2055
|
|
#define ERROR_LF_SUSPEND_SUCCESS 2057
|
|
#define ERROR_LF_RESUME_SUCCESS 2058
|
|
#define ERROR_LF_REDIRECT_SUCCESS 2059
|
|
#define ERROR_LF_REDIRECT_FAILURE 2060
|
|
#define ERROR_SWAPPER_NOT_ACTIVE 32768
|
|
#define ERROR_INVALID_SWAPID 32769
|
|
#define ERROR_IOERR_SWAP_FILE 32770
|
|
#define ERROR_SWAP_TABLE_FULL 32771
|
|
#define ERROR_SWAP_FILE_FULL 32772
|
|
#define ERROR_CANT_INIT_SWAPPER 32773
|
|
#define ERROR_SWAPPER_ALREADY_INIT 32774
|
|
#define ERROR_PMM_INSUFFICIENT_MEMORY 32775
|
|
#define ERROR_PMM_INVALID_FLAGS 32776
|
|
#define ERROR_PMM_INVALID_ADDRESS 32777
|
|
#define ERROR_PMM_LOCK_FAILED 32778
|
|
#define ERROR_PMM_UNLOCK_FAILED 32779
|
|
#define ERROR_PMM_MOVE_INCOMPLETE 32780
|
|
#define ERROR_UCOM_DRIVE_RENAMED 32781
|
|
#define ERROR_UCOM_FILENAME_TRUNCATED 32782
|
|
#define ERROR_UCOM_BUFFER_LENGTH 32783
|
|
#define ERROR_MON_CHAIN_HANDLE 32784
|
|
#define ERROR_MON_NOT_REGISTERED 32785
|
|
#define ERROR_SMG_ALREADY_TOP 32786
|
|
#define ERROR_PMM_ARENA_MODIFIED 32787
|
|
#define ERROR_SMG_PRINTER_OPEN 32788
|
|
#define ERROR_PMM_SET_FLAGS_FAILED 32789
|
|
#define ERROR_INVALID_DOS_DD 32790
|
|
#define ERROR_BLOCKED 32791
|
|
#define ERROR_NOBLOCK 32792
|
|
#define ERROR_INSTANCE_SHARED 32793
|
|
#define ERROR_NO_OBJECT 32794
|
|
#define ERROR_PARTIAL_ATTACH 32795
|
|
#define ERROR_INCACHE 32796
|
|
#define ERROR_SWAP_IO_PROBLEMS 32797
|
|
#define ERROR_CROSSES_OBJECT_BOUNDARY 32798
|
|
#define ERROR_LONGLOCK 32799
|
|
#define ERROR_SHORTLOCK 32800
|
|
#define ERROR_UVIRTLOCK 32801
|
|
#define ERROR_ALIASLOCK 32802
|
|
#define ERROR_ALIAS 32803
|
|
#define ERROR_NO_MORE_HANDLES 32804
|
|
#define ERROR_SCAN_TERMINATED 32805
|
|
#define ERROR_TERMINATOR_NOT_FOUND 32806
|
|
#define ERROR_NOT_DIRECT_CHILD 32807
|
|
#define ERROR_DELAY_FREE 32808
|
|
#define ERROR_GUARDPAGE 32809
|
|
#define ERROR_SWAPERROR 32900
|
|
#define ERROR_LDRERROR 32901
|
|
#define ERROR_NOMEMORY 32902
|
|
#define ERROR_NOACCESS 32903
|
|
#define ERROR_NO_DLL_TERM 32904
|
|
#define ERROR_CPSIO_CODE_PAGE_INVALID 65026
|
|
#define ERROR_CPSIO_NO_SPOOLER 65027
|
|
#define ERROR_CPSIO_FONT_ID_INVALID 65028
|
|
#define ERROR_CPSIO_INTERNAL_ERROR 65033
|
|
#define ERROR_CPSIO_INVALID_PTR_NAME 65034
|
|
#define ERROR_CPSIO_NOT_ACTIVE 65037
|
|
#define ERROR_CPSIO_PID_FULL 65039
|
|
#define ERROR_CPSIO_PID_NOT_FOUND 65040
|
|
#define ERROR_CPSIO_READ_CTL_SEQ 65043
|
|
#define ERROR_CPSIO_READ_FNT_DEF 65045
|
|
#define ERROR_CPSIO_WRITE_ERROR 65047
|
|
#define ERROR_CPSIO_WRITE_FULL_ERROR 65048
|
|
#define ERROR_CPSIO_WRITE_HANDLE_BAD 65049
|
|
#define ERROR_CPSIO_SWIT_LOAD 65074
|
|
#define ERROR_CPSIO_INV_COMMAND 65077
|
|
#define ERROR_CPSIO_NO_FONT_SWIT 65078
|
|
#define ERROR_ENTRY_IS_CALLGATE 65079
|
|
|
|
#endif /* INCL_DOSERRORS */
|
|
|
|
/* ----------------------------- ERRORS ----------------------------------- */
|
|
|
|
#if defined (INCL_DOSERRORS)
|
|
|
|
#define ERRACT_RETRY 1
|
|
#define ERRACT_DLYRET 2
|
|
#define ERRACT_USER 3
|
|
#define ERRACT_ABORT 4
|
|
#define ERRACT_PANIC 5
|
|
#define ERRACT_IGNORE 6
|
|
#define ERRACT_INTRET 7
|
|
|
|
#define ERRCLASS_OUTRES 1
|
|
#define ERRCLASS_TEMPSIT 2
|
|
#define ERRCLASS_AUTH 3
|
|
#define ERRCLASS_INTRN 4
|
|
#define ERRCLASS_HRDFAIL 5
|
|
#define ERRCLASS_SYSFAIL 6
|
|
#define ERRCLASS_APPERR 7
|
|
#define ERRCLASS_NOTFND 8
|
|
#define ERRCLASS_BADFMT 9
|
|
#define ERRCLASS_LOCKED 10
|
|
#define ERRCLASS_MEDIA 11
|
|
#define ERRCLASS_ALREADY 12
|
|
#define ERRCLASS_UNK 13
|
|
#define ERRCLASS_CANT 14
|
|
#define ERRCLASS_TIME 15
|
|
|
|
#define ERRLOC_UNK 1
|
|
#define ERRLOC_DISK 2
|
|
#define ERRLOC_NET 3
|
|
#define ERRLOC_SERDEV 4
|
|
#define ERRLOC_MEM 5
|
|
|
|
#endif /* INCL_DOSERRORS */
|
|
|
|
#if defined (INCL_DOSMISC)
|
|
|
|
#define FERR_DISABLEHARDERR 0x0000L
|
|
#define FERR_ENABLEHARDERR 0x0001L
|
|
#define FERR_ENABLEEXCEPTION 0x0000L
|
|
#define FERR_DISABLEEXCEPTION 0x0002L
|
|
|
|
#define BEGIN_LIBPATH 1
|
|
#define END_LIBPATH 2
|
|
|
|
ULONG DosErrClass (ULONG ulCode, PULONG pulClass, PULONG pulAction,
|
|
PULONG pulLocus);
|
|
ULONG DosError (ULONG ulError);
|
|
ULONG DosQueryExtLIBPATH (PCSZ pszExtLIBPATH, ULONG flags);
|
|
ULONG DosSetExtLIBPATH (PCSZ pszExtLIBPATH, ULONG flags);
|
|
|
|
#endif /* INCL_DOSMISC */
|
|
|
|
/* ----------------------------- FONTS ------------------------------------ */
|
|
|
|
#define FACESIZE 32
|
|
|
|
#define FATTR_SEL_ITALIC 0x0001
|
|
#define FATTR_SEL_UNDERSCORE 0x0002
|
|
#define FATTR_SEL_OUTLINE 0x0008
|
|
#define FATTR_SEL_STRIKEOUT 0x0010
|
|
#define FATTR_SEL_BOLD 0x0020
|
|
|
|
#define FATTR_TYPE_KERNING 0x0004
|
|
#define FATTR_TYPE_MBCS 0x0008
|
|
#define FATTR_TYPE_DBCS 0x0010
|
|
#define FATTR_TYPE_ANTIALIASED 0x0020
|
|
|
|
#define FATTR_FONTUSE_NOMIX 0x0002
|
|
#define FATTR_FONTUSE_OUTLINE 0x0004
|
|
#define FATTR_FONTUSE_TRANSFORMABLE 0x0008
|
|
|
|
#define FM_TYPE_FIXED 0x0001
|
|
#define FM_TYPE_LICENSED 0x0002
|
|
#define FM_TYPE_KERNING 0x0004
|
|
#define FM_TYPE_DBCS 0x0010
|
|
#define FM_TYPE_MBCS 0x0018
|
|
#define FM_TYPE_64K 0x8000
|
|
#define FM_TYPE_ATOMS 0x4000
|
|
#define FM_TYPE_FAMTRUNC 0x2000
|
|
#define FM_TYPE_FACETRUNC 0x1000
|
|
|
|
#define FM_DEFN_OUTLINE 0x0001
|
|
#define FM_DEFN_IFI 0x0002
|
|
#define FM_DEFN_WIN 0x0004
|
|
#define FM_DEFN_GENERIC 0x8000
|
|
|
|
#define FM_SEL_ITALIC 0x0001
|
|
#define FM_SEL_UNDERSCORE 0x0002
|
|
#define FM_SEL_NEGATIVE 0x0004
|
|
#define FM_SEL_OUTLINE 0x0008
|
|
#define FM_SEL_STRIKEOUT 0x0010
|
|
#define FM_SEL_BOLD 0x0020
|
|
#define FM_SEL_ISO9241_TESTED 0x0040
|
|
|
|
#define FM_CAP_NOMIX 0x0001
|
|
|
|
#define FM_ISO_9518_640 0x01
|
|
#define FM_ISO_9515_640 0x02
|
|
#define FM_ISO_9515_1024 0x04
|
|
#define FM_ISO_9517_640 0x08
|
|
#define FM_ISO_9517_1024 0x10
|
|
|
|
|
|
typedef struct _PANOSE
|
|
{
|
|
BYTE bFamilyType;
|
|
BYTE bSerifStyle;
|
|
BYTE bWeight;
|
|
BYTE bProportion;
|
|
BYTE bContrast;
|
|
BYTE bStrokeVariation;
|
|
BYTE bArmStyle;
|
|
BYTE bLetterform;
|
|
BYTE bMidline;
|
|
BYTE bXHeight;
|
|
BYTE fbPassedISO;
|
|
BYTE fbFailedISO;
|
|
} PANOSE;
|
|
|
|
typedef struct _FONTMETRICS
|
|
{
|
|
CHAR szFamilyname[FACESIZE];
|
|
CHAR szFacename[FACESIZE];
|
|
USHORT idRegistry;
|
|
USHORT usCodePage;
|
|
LONG lEmHeight;
|
|
LONG lXHeight;
|
|
LONG lMaxAscender;
|
|
LONG lMaxDescender;
|
|
LONG lLowerCaseAscent;
|
|
LONG lLowerCaseDescent;
|
|
LONG lInternalLeading;
|
|
LONG lExternalLeading;
|
|
LONG lAveCharWidth;
|
|
LONG lMaxCharInc;
|
|
LONG lEmInc;
|
|
LONG lMaxBaselineExt;
|
|
SHORT sCharSlope;
|
|
SHORT sInlineDir;
|
|
SHORT sCharRot;
|
|
USHORT usWeightClass;
|
|
USHORT usWidthClass;
|
|
SHORT sXDeviceRes;
|
|
SHORT sYDeviceRes;
|
|
SHORT sFirstChar;
|
|
SHORT sLastChar;
|
|
SHORT sDefaultChar;
|
|
SHORT sBreakChar;
|
|
SHORT sNominalPointSize;
|
|
SHORT sMinimumPointSize;
|
|
SHORT sMaximumPointSize;
|
|
USHORT fsType;
|
|
USHORT fsDefn;
|
|
USHORT fsSelection;
|
|
USHORT fsCapabilities;
|
|
LONG lSubscriptXSize;
|
|
LONG lSubscriptYSize;
|
|
LONG lSubscriptXOffset;
|
|
LONG lSubscriptYOffset;
|
|
LONG lSuperscriptXSize;
|
|
LONG lSuperscriptYSize;
|
|
LONG lSuperscriptXOffset;
|
|
LONG lSuperscriptYOffset;
|
|
LONG lUnderscoreSize;
|
|
LONG lUnderscorePosition;
|
|
LONG lStrikeoutSize;
|
|
LONG lStrikeoutPosition;
|
|
SHORT sKerningPairs;
|
|
SHORT sFamilyClass;
|
|
LONG lMatch;
|
|
LONG FamilyNameAtom;
|
|
LONG FaceNameAtom;
|
|
PANOSE panose;
|
|
} FONTMETRICS;
|
|
typedef FONTMETRICS *PFONTMETRICS;
|
|
|
|
typedef struct _FATTRS
|
|
{
|
|
USHORT usRecordLength;
|
|
USHORT fsSelection;
|
|
LONG lMatch;
|
|
CHAR szFacename[FACESIZE];
|
|
USHORT idRegistry;
|
|
USHORT usCodePage;
|
|
LONG lMaxBaselineExt;
|
|
LONG lAveCharWidth;
|
|
USHORT fsType;
|
|
USHORT fsFontUse;
|
|
} FATTRS;
|
|
typedef FATTRS *PFATTRS;
|
|
|
|
/* ------------------------- MEMORY MANAGEMENT ---------------------------- */
|
|
|
|
#if defined (INCL_DOSMEMMGR) || !defined (INCL_NOCOMMON)
|
|
|
|
#define PAG_READ 0x0001
|
|
#define PAG_WRITE 0x0002
|
|
#define PAG_EXECUTE 0x0004
|
|
#define PAG_GUARD 0x0008
|
|
#define PAG_COMMIT 0x0010
|
|
#define PAG_DECOMMIT 0x0020
|
|
#define OBJ_TILE 0x0040
|
|
#define OBJ_PROTECTED 0x0080
|
|
#define OBJ_GETTABLE 0x0100
|
|
#define OBJ_GIVEABLE 0x0200
|
|
#define PAG_DEFAULT 0x0400
|
|
#define PAG_SHARED 0x2000
|
|
#define PAG_FREE 0x4000
|
|
#define PAG_BASE 0x00010000
|
|
|
|
#define DOSSUB_INIT 0x0001
|
|
#define DOSSUB_GROW 0x0002
|
|
#define DOSSUB_SPARSE_OBJ 0x0004
|
|
#define DOSSUB_SERIALIZE 0x0008
|
|
|
|
#define fPERM (PAG_EXECUTE | PAG_READ | PAG_WRITE)
|
|
#define fSHARE (OBJ_GETTABLE | OBJ_GIVEABLE)
|
|
#define fALLOC (fPERM | OBJ_TILE | PAG_COMMIT)
|
|
#define fALLOCSHR (fPERM | fSHARE | OBJ_TILE | PAG_COMMIT)
|
|
#define fGETNMSHR (fPERM)
|
|
#define fGETSHR (fPERM)
|
|
#define fGIVESHR (fPERM)
|
|
#define fSET (fPERM|PAG_COMMIT|PAG_DECOMMIT|PAG_DEFAULT)
|
|
|
|
ULONG DosAllocMem (PPVOID pBaseAddress, ULONG ulObjectSize,
|
|
ULONG ulAllocationFlags);
|
|
ULONG DosAllocSharedMem (PPVOID pBaseAddress, PCSZ pszName,
|
|
ULONG ulObjectSize, ULONG ulAllocationFlags);
|
|
ULONG DosFreeMem (PVOID pBaseAddress);
|
|
ULONG DosGetNamedSharedMem (PPVOID pBaseAddress, PCSZ pszSharedMemName,
|
|
ULONG ulAttributeFlags);
|
|
ULONG DosGetSharedMem (CPVOID pBaseAddress, ULONG ulAttributeFlags);
|
|
ULONG DosGiveSharedMem (CPVOID pBaseAddress, PID idProcessId,
|
|
ULONG ulAttributeFlags);
|
|
ULONG DosQueryMem (CPVOID pBaseAddress, PULONG pulRegionSize,
|
|
PULONG pulAllocationFlags);
|
|
ULONG DosSetMem (CPVOID pBaseAddress, ULONG ulRegionSize,
|
|
ULONG ulAttributeFlags);
|
|
ULONG DosSubAllocMem (PVOID pOffset, PPVOID pBlockOffset, ULONG ulSize);
|
|
ULONG DosSubFreeMem (PVOID pOffset, PVOID pBlockOffset, ULONG ulSize);
|
|
ULONG DosSubSetMem (PVOID pOffset, ULONG ulFlags, ULONG ulSize);
|
|
ULONG DosSubUnsetMem (PVOID pOffset);
|
|
|
|
#endif /* INCL_DOSMEMMGR || !INCL_NOCOMMON */
|
|
|
|
/* --------------------------- FILE SYSTEM -------------------------------- */
|
|
|
|
#define CCHMAXPATH 260
|
|
#define CCHMAXPATHCOMP 256
|
|
|
|
#if defined (INCL_DOSMISC)
|
|
#define DSP_IMPLIEDCUR 1
|
|
#define DSP_PATHREF 2
|
|
#define DSP_IGNORENETERR 4
|
|
#endif
|
|
|
|
#if defined (INCL_DOSFILEMGR) || !defined (INCL_NOCOMMON)
|
|
|
|
#define DCPY_EXISTING 0x0001
|
|
#define DCPY_APPEND 0x0002
|
|
#define DCPY_FAILEAS 0x0004
|
|
|
|
#define DSPI_WRTTHRU 0x0010
|
|
|
|
#define EAT_BINARY 0xfffe
|
|
#define EAT_ASCII 0xfffd
|
|
#define EAT_BITMAP 0xfffb
|
|
#define EAT_METAFILE 0xfffa
|
|
#define EAT_ICON 0xfff9
|
|
#define EAT_EA 0xffee
|
|
#define EAT_MVMT 0xffdf
|
|
#define EAT_MVST 0xffde
|
|
#define EAT_ASN1 0xffdd
|
|
|
|
#define ENUMEA_LEVEL_NO_VALUE 1
|
|
|
|
#define ENUMEA_REFTYPE_FHANDLE 0
|
|
#define ENUMEA_REFTYPE_PATH 1
|
|
#define ENUMEA_REFTYPE_MAX ENUMEA_REFTYPE_PATH
|
|
|
|
#define ENUMEA_REFTYPE_FHANDLE 0
|
|
#define ENUMEA_REFTYPE_PATH 1
|
|
|
|
#define FEA_NEEDEA 0x80
|
|
|
|
#define FHB_DSKREMOTE 0x8000
|
|
#define FHB_CHRDEVREMOTE 0x8000
|
|
#define FHB_PIPEREMOTE 0x8000
|
|
|
|
#define FHT_DISKFILE 0x0000
|
|
#define FHT_CHRDEV 0x0001
|
|
#define FHT_PIPE 0x0002
|
|
|
|
#define FIL_STANDARD 1
|
|
#define FIL_QUERYEASIZE 2
|
|
#define FIL_QUERYEASFROMLIST 3
|
|
#define FIL_QUERYFULLNAME 5 /* DosQueryPathInfo */
|
|
|
|
#define FILE_BEGIN 0
|
|
#define FILE_CURRENT 1
|
|
#define FILE_END 2
|
|
|
|
#define FILE_NORMAL 0x0000
|
|
#define FILE_READONLY 0x0001
|
|
#define FILE_HIDDEN 0x0002
|
|
#define FILE_SYSTEM 0x0004
|
|
#define FILE_DIRECTORY 0x0010
|
|
#define FILE_ARCHIVED 0x0020
|
|
|
|
#define FILE_IGNORE 0x10000
|
|
|
|
#define FILE_EXISTED 0x0001
|
|
#define FILE_CREATED 0x0002
|
|
#define FILE_TRUNCATED 0x0003
|
|
|
|
#define FILE_OPEN 0x0001
|
|
#define FILE_TRUNCATE 0x0002
|
|
#define FILE_CREATE 0x0010
|
|
|
|
#define FS_ATTACH 0
|
|
#define FS_DETACH 1
|
|
#define FS_SPOOLATTACH 2
|
|
#define FS_SPOOLDETACH 3
|
|
|
|
#define FSAIL_QUERYNAME 1
|
|
#define FSAIL_DEVNUMBER 2
|
|
#define FSAIL_DRVNUMBER 3
|
|
|
|
#define FSAT_CHARDEV 1
|
|
#define FSAT_PSEUDODEV 2
|
|
#define FSAT_LOCALDRV 3
|
|
#define FSAT_REMOTEDRV 4
|
|
|
|
#define FSCTL_HANDLE 1
|
|
#define FSCTL_PATHNAME 2
|
|
#define FSCTL_FSDNAME 3
|
|
|
|
#define FSCTL_ERROR_INFO 1
|
|
#define FSCTL_MAX_EASIZE 2
|
|
#define FSCTL_GET_NEXT_ROUTE_NAME 3
|
|
#define FSCTL_DAEMON_QUERY 4
|
|
|
|
#define FSCTL_QUERY_COMPLETE 0
|
|
#define FSCTL_QUERY_AGAIN 1
|
|
|
|
#define FSIL_ALLOC 1
|
|
#define FSIL_VOLSER 2
|
|
|
|
#define HANDTYPE_FILE 0x0000
|
|
#define HANDTYPE_DEVICE 0x0001
|
|
#define HANDTYPE_PIPE 0x0002
|
|
#define HANDTYPE_PROTECTED 0x4000
|
|
#define HANDTYPE_NETWORK 0x8000
|
|
|
|
#define HDIR_SYSTEM 1
|
|
#define HDIR_CREATE ((HDIR)-1)
|
|
|
|
#define MUST_HAVE_READONLY (FILE_READONLY | (FILE_READONLY << 8))
|
|
#define MUST_HAVE_HIDDEN (FILE_HIDDEN | (FILE_HIDDEN << 8))
|
|
#define MUST_HAVE_SYSTEM (FILE_SYSTEM | (FILE_SYSTEM << 8))
|
|
#define MUST_HAVE_DIRECTORY (FILE_DIRECTORY | (FILE_DIRECTORY << 8))
|
|
#define MUST_HAVE_ARCHIVED (FILE_ARCHIVED | (FILE_ARCHIVED << 8))
|
|
|
|
#define OPEN_ACTION_FAIL_IF_EXISTS 0x0000
|
|
#define OPEN_ACTION_OPEN_IF_EXISTS 0x0001
|
|
#define OPEN_ACTION_REPLACE_IF_EXISTS 0x0002
|
|
#define OPEN_ACTION_FAIL_IF_NEW 0x0000
|
|
#define OPEN_ACTION_CREATE_IF_NEW 0x0010
|
|
|
|
#define OPEN_ACCESS_READONLY 0x0000
|
|
#define OPEN_ACCESS_WRITEONLY 0x0001
|
|
#define OPEN_ACCESS_READWRITE 0x0002
|
|
|
|
#define OPEN_SHARE_DENYREADWRITE 0x0010
|
|
#define OPEN_SHARE_DENYWRITE 0x0020
|
|
#define OPEN_SHARE_DENYREAD 0x0030
|
|
#define OPEN_SHARE_DENYNONE 0x0040
|
|
|
|
#define OPEN_FLAGS_NOINHERIT 0x0080
|
|
#define OPEN_FLAGS_NO_LOCALITY 0x0000
|
|
#define OPEN_FLAGS_SEQUENTIAL 0x0100
|
|
#define OPEN_FLAGS_RANDOM 0x0200
|
|
#define OPEN_FLAGS_RANDOMSEQUENTIAL 0x0300
|
|
#define OPEN_FLAGS_NO_CACHE 0x1000
|
|
#define OPEN_FLAGS_FAIL_ON_ERROR 0x2000
|
|
#define OPEN_FLAGS_WRITE_THROUGH 0x4000
|
|
#define OPEN_FLAGS_DASD 0x8000
|
|
#define OPEN_FLAGS_NONSPOOLED 0x40000
|
|
#define OPEN_FLAGS_PROTECTED_HANDLE 0x40000000
|
|
|
|
#define SEARCH_PATH 0x0000
|
|
#define SEARCH_CUR_DIRECTORY 0x0001
|
|
#define SEARCH_ENVIRONMENT 0x0002
|
|
#define SEARCH_IGNORENETERRS 0x0004
|
|
|
|
|
|
typedef LHANDLE HFILE;
|
|
typedef HFILE *PHFILE;
|
|
|
|
typedef ULONG FHLOCK;
|
|
typedef PULONG PFHLOCK;
|
|
|
|
typedef LHANDLE HDIR;
|
|
typedef HDIR *PHDIR;
|
|
|
|
|
|
typedef struct _FTIME
|
|
{
|
|
USHORT twosecs : 5;
|
|
USHORT minutes : 6;
|
|
USHORT hours : 5;
|
|
} FTIME;
|
|
typedef FTIME *PFTIME;
|
|
|
|
typedef struct _FDATE
|
|
{
|
|
USHORT day : 5;
|
|
USHORT month : 4;
|
|
USHORT year : 7;
|
|
} FDATE;
|
|
typedef FDATE *PFDATE;
|
|
|
|
typedef struct _FEA
|
|
{
|
|
BYTE fEA;
|
|
BYTE cbName;
|
|
USHORT cbValue;
|
|
} FEA;
|
|
typedef FEA *PFEA;
|
|
|
|
typedef struct _FEALIST
|
|
{
|
|
ULONG cbList;
|
|
FEA list[1];
|
|
} FEALIST;
|
|
typedef FEALIST *PFEALIST;
|
|
|
|
typedef struct _GEA
|
|
{
|
|
BYTE cbName;
|
|
CHAR szName[1];
|
|
} GEA;
|
|
typedef GEA *PGEA;
|
|
|
|
typedef struct _GEALIST
|
|
{
|
|
ULONG cbList;
|
|
GEA list[1];
|
|
} GEALIST;
|
|
typedef GEALIST *PGEALIST;
|
|
|
|
typedef struct _EAOP
|
|
{
|
|
PGEALIST fpGEAList;
|
|
PFEALIST fpFEAList;
|
|
ULONG oError;
|
|
} EAOP;
|
|
typedef EAOP *PEAOP;
|
|
|
|
typedef struct _FEA2
|
|
{
|
|
ULONG oNextEntryOffset;
|
|
BYTE fEA;
|
|
BYTE cbName;
|
|
USHORT cbValue;
|
|
CHAR szName[1];
|
|
} FEA2;
|
|
typedef FEA2 *PFEA2;
|
|
|
|
typedef struct _FEA2LIST
|
|
{
|
|
ULONG cbList;
|
|
FEA2 list[1];
|
|
} FEA2LIST;
|
|
typedef FEA2LIST *PFEA2LIST;
|
|
|
|
typedef struct _GEA2
|
|
{
|
|
ULONG oNextEntryOffset;
|
|
BYTE cbName;
|
|
CHAR szName[1];
|
|
} GEA2;
|
|
typedef GEA2 *PGEA2;
|
|
|
|
typedef struct _GEA2LIST
|
|
{
|
|
ULONG cbList;
|
|
GEA2 list[1];
|
|
} GEA2LIST;
|
|
typedef GEA2LIST *PGEA2LIST;
|
|
|
|
typedef struct _EAOP2
|
|
{
|
|
PGEA2LIST fpGEA2List;
|
|
PFEA2LIST fpFEA2List;
|
|
ULONG oError;
|
|
} EAOP2;
|
|
typedef EAOP2 *PEAOP2;
|
|
|
|
typedef struct _DENA1
|
|
{
|
|
UCHAR reserved;
|
|
UCHAR cbName;
|
|
USHORT cbValue;
|
|
UCHAR szName[1];
|
|
} DENA1;
|
|
typedef DENA1 *PDENA1;
|
|
|
|
typedef FEA2 DENA2;
|
|
typedef PFEA2 PDENA2;
|
|
|
|
typedef struct _EASIZEBUF
|
|
{
|
|
USHORT cbMaxEASize;
|
|
ULONG cbMaxEAListSize; /* Packed? */
|
|
} EASIZEBUF;
|
|
typedef EASIZEBUF *PEASIZEBUF;
|
|
|
|
typedef struct _ROUTENAMEBUF
|
|
{
|
|
ULONG hRouteHandle;
|
|
UCHAR szRouteName;
|
|
} ROUTENAMEBUF;
|
|
typedef ROUTENAMEBUF *PROUTENAMEBUF;
|
|
|
|
typedef struct _FSDTHREAD
|
|
{
|
|
USHORT usFunc;
|
|
USHORT usStackSize;
|
|
ULONG ulPriorityClass;
|
|
LONG lPriorityLevel;
|
|
} FSDTHREAD;
|
|
|
|
typedef struct _FSDDAEMON
|
|
{
|
|
USHORT usNumThreads;
|
|
USHORT usMoreFlag;
|
|
USHORT usCallInstance;
|
|
FSDTHREAD tdThrds[16];
|
|
} FSDDAEMON;
|
|
|
|
typedef struct _FILEFINDBUF
|
|
{
|
|
FDATE fdateCreation;
|
|
FTIME ftimeCreation;
|
|
FDATE fdateLastAccess;
|
|
FTIME ftimeLastAccess;
|
|
FDATE fdateLastWrite;
|
|
FTIME ftimeLastWrite;
|
|
ULONG cbFile;
|
|
ULONG cbFileAlloc;
|
|
USHORT attrFile;
|
|
UCHAR cchName;
|
|
CHAR achName[CCHMAXPATHCOMP];
|
|
} FILEFINDBUF;
|
|
typedef FILEFINDBUF *PFILEFINDBUF;
|
|
|
|
typedef struct _FILEFINDBUF2
|
|
{
|
|
FDATE fdateCreation;
|
|
FTIME ftimeCreation;
|
|
FDATE fdateLastAccess;
|
|
FTIME ftimeLastAccess;
|
|
FDATE fdateLastWrite;
|
|
FTIME ftimeLastWrite;
|
|
ULONG cbFile;
|
|
ULONG cbFileAlloc;
|
|
USHORT attrFile;
|
|
ULONG cbList;
|
|
UCHAR cchName;
|
|
CHAR achName[CCHMAXPATHCOMP];
|
|
} FILEFINDBUF2;
|
|
typedef FILEFINDBUF2 *PFILEFINDBUF2;
|
|
|
|
typedef struct _FILEFINDBUF3
|
|
{
|
|
ULONG oNextEntryOffset;
|
|
FDATE fdateCreation;
|
|
FTIME ftimeCreation;
|
|
FDATE fdateLastAccess;
|
|
FTIME ftimeLastAccess;
|
|
FDATE fdateLastWrite;
|
|
FTIME ftimeLastWrite;
|
|
ULONG cbFile;
|
|
ULONG cbFileAlloc;
|
|
ULONG attrFile;
|
|
UCHAR cchName;
|
|
CHAR achName[CCHMAXPATHCOMP];
|
|
} FILEFINDBUF3;
|
|
typedef FILEFINDBUF3 *PFILEFINDBUF3;
|
|
|
|
typedef struct _FILEFINDBUF4
|
|
{
|
|
ULONG oNextEntryOffset;
|
|
FDATE fdateCreation;
|
|
FTIME ftimeCreation;
|
|
FDATE fdateLastAccess;
|
|
FTIME ftimeLastAccess;
|
|
FDATE fdateLastWrite;
|
|
FTIME ftimeLastWrite;
|
|
ULONG cbFile;
|
|
ULONG cbFileAlloc;
|
|
ULONG attrFile;
|
|
ULONG cbList;
|
|
UCHAR cchName;
|
|
CHAR achName[CCHMAXPATHCOMP];
|
|
} FILEFINDBUF4;
|
|
typedef FILEFINDBUF4 *PFILEFINDBUF4;
|
|
|
|
typedef struct _FILELOCK
|
|
{
|
|
LONG lOffset;
|
|
LONG lRange;
|
|
} FILELOCK;
|
|
typedef FILELOCK *PFILELOCK;
|
|
|
|
typedef struct _FILESTATUS
|
|
{
|
|
FDATE fdateCreation;
|
|
FTIME ftimeCreation;
|
|
FDATE fdateLastAccess;
|
|
FTIME ftimeLastAccess;
|
|
FDATE fdateLastWrite;
|
|
FTIME ftimeLastWrite;
|
|
ULONG cbFile;
|
|
ULONG cbFileAlloc;
|
|
USHORT attrFile;
|
|
} FILESTATUS;
|
|
typedef FILESTATUS *PFILESTATUS;
|
|
|
|
typedef struct _FILESTATUS2
|
|
{
|
|
FDATE fdateCreation;
|
|
FTIME ftimeCreation;
|
|
FDATE fdateLastAccess;
|
|
FTIME ftimeLastAccess;
|
|
FDATE fdateLastWrite;
|
|
FTIME ftimeLastWrite;
|
|
ULONG cbFile;
|
|
ULONG cbFileAlloc;
|
|
USHORT attrFile;
|
|
ULONG cbList;
|
|
} FILESTATUS2;
|
|
typedef FILESTATUS2 *PFILESTATUS2;
|
|
|
|
typedef struct _FILESTATUS3
|
|
{
|
|
FDATE fdateCreation;
|
|
FTIME ftimeCreation;
|
|
FDATE fdateLastAccess;
|
|
FTIME ftimeLastAccess;
|
|
FDATE fdateLastWrite;
|
|
FTIME ftimeLastWrite;
|
|
ULONG cbFile;
|
|
ULONG cbFileAlloc;
|
|
ULONG attrFile;
|
|
} FILESTATUS3;
|
|
typedef FILESTATUS3 *PFILESTATUS3;
|
|
|
|
typedef struct _FILESTATUS4
|
|
{
|
|
FDATE fdateCreation;
|
|
FTIME ftimeCreation;
|
|
FDATE fdateLastAccess;
|
|
FTIME ftimeLastAccess;
|
|
FDATE fdateLastWrite;
|
|
FTIME ftimeLastWrite;
|
|
ULONG cbFile;
|
|
ULONG cbFileAlloc;
|
|
ULONG attrFile;
|
|
ULONG cbList;
|
|
} FILESTATUS4;
|
|
typedef FILESTATUS4 *PFILESTATUS4;
|
|
|
|
typedef struct _FSALLOCATE
|
|
{
|
|
ULONG idFileSystem;
|
|
ULONG cSectorUnit;
|
|
ULONG cUnit;
|
|
ULONG cUnitAvail;
|
|
USHORT cbSector;
|
|
} FSALLOCATE;
|
|
typedef FSALLOCATE *PFSALLOCATE;
|
|
|
|
typedef struct _FSQBUFFER
|
|
{
|
|
USHORT iType;
|
|
USHORT cbName;
|
|
UCHAR szName[1];
|
|
USHORT cbFSDName;
|
|
UCHAR szFSDName[1];
|
|
USHORT cbFSAData;
|
|
UCHAR rgFSAData[1];
|
|
} FSQBUFFER;
|
|
typedef FSQBUFFER *PFSQBUFFER;
|
|
|
|
typedef struct _FSQBUFFER2
|
|
{
|
|
USHORT iType;
|
|
USHORT cbName;
|
|
USHORT cbFSDName;
|
|
USHORT cbFSAData;
|
|
UCHAR szName[1];
|
|
UCHAR szFSDName[1];
|
|
UCHAR rgFSAData[1];
|
|
} FSQBUFFER2;
|
|
typedef FSQBUFFER2 *PFSQBUFFER2;
|
|
|
|
typedef struct _SPOOLATTACH
|
|
{
|
|
USHORT hNmPipe;
|
|
ULONG ulKey;
|
|
} SPOOLATTACH;
|
|
typedef SPOOLATTACH *PSPOOLATTACH;
|
|
|
|
typedef struct _VOLUMELABEL
|
|
{
|
|
BYTE cch;
|
|
CHAR szVolLabel[12];
|
|
} VOLUMELABEL;
|
|
typedef VOLUMELABEL *PVOLUMELABEL;
|
|
|
|
typedef struct _FSINFO
|
|
{
|
|
FDATE fdateCreation;
|
|
FTIME ftimeCreation;
|
|
VOLUMELABEL vol;
|
|
} FSINFO;
|
|
typedef FSINFO *PFSINFO;
|
|
|
|
|
|
ULONG DosCancelLockRequest (HFILE hFile, __const__ FILELOCK *pfl);
|
|
ULONG DosClose (HFILE hFile);
|
|
ULONG DosCopy (PCSZ pszSource, PCSZ pszTarget, ULONG ulOption);
|
|
ULONG DosCreateDir (PCSZ pszDirName, PEAOP2 pEABuf);
|
|
ULONG DosDelete (PCSZ pszFileName);
|
|
ULONG DosDeleteDir (PCSZ pszDirName);
|
|
ULONG DosDupHandle (HFILE hFile, PHFILE phFile);
|
|
ULONG DosEditName (ULONG ulLevel, PCSZ pszSource, PCSZ pszEdit,
|
|
PBYTE pszTargetBuf, ULONG ulTargetBufLength);
|
|
ULONG DosEnumAttribute (ULONG ulRefType, CPVOID pvFile, ULONG ulEntry,
|
|
PVOID pvBuf, ULONG ulBufLength, PULONG pulCount, ULONG ulInfoLevel);
|
|
ULONG DosFindClose (HDIR hDir);
|
|
ULONG DosFindFirst (PCSZ pszFileSpec, PHDIR phDir, ULONG flAttribute,
|
|
PVOID pFindBuf, ULONG ulFindBufLength, PULONG pulFileNames,
|
|
ULONG ulInfoLevel);
|
|
ULONG DosFindNext (HDIR hDir, PVOID pFindBuf, ULONG ulFindBufLength,
|
|
PULONG pulFileNames);
|
|
ULONG DosForceDelete (PCSZ pszFileName);
|
|
ULONG DosFSAttach (PCSZ pszDevice, PCSZ pszFilesystem,
|
|
__const__ VOID *pData, ULONG ulDataLength, ULONG ulFlag);
|
|
ULONG DosFSCtl (PVOID pData, ULONG ulDataLengthMax, PULONG pulDataLength,
|
|
PVOID pParmList, ULONG ulParmLengthMax, PULONG pulParmLength,
|
|
ULONG ulFunction, PCSZ pszRouteName, HFILE hFile, ULONG ulMethod);
|
|
ULONG DosMove (PCSZ pszOldName, PCSZ pszNewName);
|
|
ULONG DosOpen (PCSZ pszFileName, PHFILE phFile, PULONG pulAction,
|
|
ULONG ulFileSize, ULONG ulAttribute, ULONG ulOpenFlags, ULONG ulOpenMode,
|
|
PEAOP2 pEABuf);
|
|
ULONG DosProtectClose (HFILE hFile, FHLOCK fhFileHandleLockID);
|
|
ULONG DosProtectEnumAttribute (ULONG ulRefType, CPVOID pvFile,
|
|
ULONG ulEntry, PVOID pvBuf, ULONG ulBufLength, PULONG pulCount,
|
|
ULONG ulInfoLevel, FHLOCK fhFileHandleLockID);
|
|
ULONG DosProtectOpen (PCSZ pszFileName, PHFILE phFile, PULONG pulAction,
|
|
ULONG ulFileSize, ULONG ulAttribute, ULONG ulOpenFlags, ULONG ulOpenMode,
|
|
PEAOP2 pEABuf, PFHLOCK pfhFileHandleLockID);
|
|
ULONG DosProtectQueryFHState (HFILE hFile, PULONG pulMode,
|
|
FHLOCK fhFileHandleLockID);
|
|
ULONG DosProtectQueryFileInfo (HFILE hFile, ULONG ulInfoLevel,
|
|
PVOID pInfoBuffer, ULONG ulInfoLength, FHLOCK fhFileHandleLockID);
|
|
ULONG DosProtectRead (HFILE hFile, PVOID pBuffer, ULONG ulLength,
|
|
PULONG pulBytesRead, FHLOCK fhFileHandleLockID);
|
|
ULONG DosProtectSetFHState (HFILE hFile, ULONG ulMode,
|
|
FHLOCK fhFileHandleLockID);
|
|
ULONG DosProtectSetFileInfo (HFILE hFile, ULONG ulInfoLevel, PVOID pInfoBuffer,
|
|
ULONG ulInfoLength, FHLOCK fhFileHandleLockID);
|
|
ULONG DosProtectSetFileLocks (HFILE hFile, __const__ FILELOCK *pflUnlock,
|
|
__const__ FILELOCK *pflLock, ULONG ulTimeout, ULONG ulFlags,
|
|
FHLOCK fhFileHandleLockID);
|
|
ULONG DosProtectSetFilePtr (HFILE hFile, LONG lOffset, ULONG ulOrigin,
|
|
PULONG pulPos, FHLOCK fhFileHandleLockID);
|
|
ULONG DosProtectSetFileSize (HFILE hFile, ULONG ulSize,
|
|
FHLOCK fhFileHandleLockID);
|
|
ULONG DosProtectWrite (HFILE hFile, CPVOID pBuffer, ULONG ulLength,
|
|
PULONG pulBytesWritten, FHLOCK fhFileHandleLockID);
|
|
ULONG DosQueryCurrentDir (ULONG ulDrive, PBYTE pPath, PULONG pulPathLength);
|
|
ULONG DosQueryCurrentDisk (PULONG pulDrive, PULONG pulLogical);
|
|
ULONG DosQueryFHState (HFILE hFile, PULONG pulMode);
|
|
ULONG DosQueryFileInfo (HFILE hFile, ULONG ulInfoLevel, PVOID pInfoBuffer,
|
|
ULONG ulInfoLength);
|
|
ULONG DosQueryFSAttach (PCSZ pszDeviceName, ULONG ulOrdinal,
|
|
ULONG ulFSAInfoLevel, PFSQBUFFER2 pfsqb, PULONG pulBufLength);
|
|
ULONG DosQueryFSInfo (ULONG ulDrive, ULONG ulInfoLevel, PVOID pBuf,
|
|
ULONG ulBufLength);
|
|
ULONG DosQueryHType (HFILE hFile, PULONG pulType, PULONG pulAttr);
|
|
ULONG DosQueryPathInfo (PCSZ pszPathName, ULONG ulInfoLevel,
|
|
PVOID pInfoBuffer, ULONG ulInfoLength);
|
|
ULONG DosQueryVerify (PBOOL32 pVerify);
|
|
ULONG DosRead (HFILE hFile, PVOID pBuffer, ULONG ulLength,
|
|
PULONG pulBytesRead);
|
|
ULONG DosResetBuffer (HFILE hf);
|
|
ULONG DosSetCurrentDir (PCSZ pszDir);
|
|
ULONG DosSetDefaultDisk (ULONG ulDrive);
|
|
ULONG DosSetFHState (HFILE hFile, ULONG ulMode);
|
|
ULONG DosSetFileInfo (HFILE hFile, ULONG ulInfoLevel, PVOID pInfoBuffer,
|
|
ULONG ulInfoLength);
|
|
ULONG DosSetFileLocks (HFILE hFile, __const__ FILELOCK *pflUnlock,
|
|
__const__ FILELOCK *pflLock, ULONG ulTimeout, ULONG ulFlags);
|
|
ULONG DosSetFilePtr (HFILE hFile, LONG lOffset, ULONG ulOrigin, PULONG pulPos);
|
|
ULONG DosSetFileSize (HFILE hFile, ULONG ulSize);
|
|
ULONG DosSetFSInfo (ULONG ulDrive, ULONG ulInfoLevel, PVOID pBuf,
|
|
ULONG ulBufLength);
|
|
ULONG DosSetMaxFH (ULONG ulCount);
|
|
ULONG DosSetPathInfo (PCSZ pszPathName, ULONG ulInfoLevel, PVOID pInfoBuffer,
|
|
ULONG ulInfoLength, ULONG ulOptions);
|
|
ULONG DosSetRelMaxFH (PLONG pulReqCount, PULONG pulCurMaxFH);
|
|
ULONG DosSetVerify (BOOL32 f32Verify);
|
|
ULONG DosShutdown (ULONG ulReserved);
|
|
ULONG DosWrite (HFILE hFile, CPVOID pBuffer, ULONG ulLength,
|
|
PULONG pulBytesWritten);
|
|
|
|
#endif /* INCL_DOSFILEMGR || !INCL_NOCOMMON */
|
|
|
|
|
|
#if defined (INCL_DOSMISC)
|
|
ULONG DosSearchPath (ULONG ulControl, PCSZ pszPath, PCSZ pszFilename,
|
|
PBYTE pBuf, ULONG ulBufLength);
|
|
#endif /* INCL_DOSMISC */
|
|
|
|
/* ---------------------------- DEVICE I/O -------------------------------- */
|
|
|
|
#if defined (INCL_DOSDEVICES)
|
|
|
|
#define DEVINFO_PRINTER 0
|
|
#define DEVINFO_RS232 1
|
|
#define DEVINFO_FLOPPY 2
|
|
#define DEVINFO_COPROCESSOR 3
|
|
#define DEVINFO_SUBMODEL 4
|
|
#define DEVINFO_MODEL 5
|
|
#define DEVINFO_ADAPTER 6
|
|
|
|
#define INFO_COUNT_PARTITIONABLE_DISKS 1
|
|
#define INFO_GETIOCTLHANDLE 2
|
|
#define INFO_FREEIOCTLHANDLE 3
|
|
|
|
ULONG DosDevConfig (PVOID pInfo, ULONG ulItem);
|
|
ULONG DosDevIOCtl (HFILE hDevice, ULONG ulCategory, ULONG ulFunction,
|
|
PVOID pParams, ULONG ulParamsLengthMax, PULONG pulParamsLength,
|
|
PVOID pData, ULONG ulDataLengthMax, PULONG pulDataLength);
|
|
ULONG DosPhysicalDisk (ULONG ulFunction, PVOID pBuffer, ULONG ulBufferLength,
|
|
PVOID pParams, ULONG ulParamsLength);
|
|
|
|
#endif /* INCL_DOSDEVICES */
|
|
|
|
#if defined (INCL_DOSDEVIOCTL)
|
|
|
|
#define IOCTL_ASYNC 0x0001
|
|
#define IOCTL_SCR_AND_PTRDRAW 0x0003
|
|
#define IOCTL_KEYBOARD 0x0004
|
|
#define IOCTL_PRINTER 0x0005
|
|
#define IOCTL_LIGHTPEN 0x0006
|
|
#define IOCTL_POINTINGDEVICE 0x0007
|
|
#define IOCTL_DISK 0x0008
|
|
#define IOCTL_PHYSICALDISK 0x0009
|
|
#define IOCTL_MONITOR 0x000a
|
|
#define IOCTL_GENERAL 0x000b
|
|
#define IOCTL_POWER 0x000c
|
|
#define IOCTL_OEMHLP 0x0080
|
|
#define IOCTL_TESTCFG_SYS 0x0080
|
|
#define IOCTL_CDROMDISK 0x0080
|
|
#define IOCTL_CDROMAUDIO 0x0081
|
|
#define IOCTL_TOUCH_DEVDEP 0x0081
|
|
#define IOCTL_TOUCH_DEVINDEP 0x0081
|
|
|
|
#define ASYNC_SETBAUDRATE 0x0041
|
|
#define ASYNC_SETLINECTRL 0x0042
|
|
#define ASYNC_EXTSETBAUDRATE 0x0043
|
|
#define ASYNC_TRANSMITIMM 0x0044
|
|
#define ASYNC_SETBREAKOFF 0x0045
|
|
#define ASYNC_SETMODEMCTRL 0x0046
|
|
#define ASYNC_STOPTRANSMIT 0x0047
|
|
#define ASYNC_STARTTRANSMIT 0x0048
|
|
#define ASYNC_SETBREAKON 0x004b
|
|
#define ASYNC_SETDCBINFO 0x0053
|
|
#define ASYNC_SETENHANCEDMODEPARMS 0x0054
|
|
#define ASYNC_GETBAUDRATE 0x0061
|
|
#define ASYNC_GETLINECTRL 0x0062
|
|
#define ASYNC_EXTGETBAUDRATE 0x0063
|
|
#define ASYNC_GETCOMMSTATUS 0x0064
|
|
#define ASYNC_GETLINESTATUS 0x0065
|
|
#define ASYNC_GETMODEMOUTPUT 0x0066
|
|
#define ASYNC_GETMODEMINPUT 0x0067
|
|
#define ASYNC_GETINQUECOUNT 0x0068
|
|
#define ASYNC_GETOUTQUECOUNT 0x0069
|
|
#define ASYNC_GETCOMMERROR 0x006d
|
|
#define ASYNC_GETCOMMEVENT 0x0072
|
|
#define ASYNC_GETDCBINFO 0x0073
|
|
#define ASYNC_GETENHANCEDMODEPARMS 0x0074
|
|
|
|
#define SCR_ALLOCLDT 0x0070
|
|
#define SCR_DEALLOCLDT 0x0071
|
|
#define PTR_GETPTRDRAWADDRESS 0x0072
|
|
#define VID_INITCALLVECTOR 0x0073
|
|
#define SCR_ABIOSPASSTHRU 0x0074
|
|
#define SCR_ALLOCLDTOFF 0x0075
|
|
#define SCR_ALLOCLDTBGVAL 0x0076
|
|
#define SCR_ALLOCVIDEOBUFFER 0x007e
|
|
#define SCR_GETROMFONTADDR 0x007f
|
|
|
|
#define KBD_SETTRANSTABLE 0x0050
|
|
#define KBD_SETINPUTMODE 0x0051
|
|
#define KBD_SETINTERIMFLAG 0x0052
|
|
#define KBD_SETSHIFTSTATE 0x0053
|
|
#define KBD_SETTYPAMATICRATE 0x0054
|
|
#define KBD_SETFGNDSCREENGRP 0x0055
|
|
#define KBD_SETSESMGRHOTKEY 0x0056
|
|
#define KBD_SETFOCUS 0x0057
|
|
#define KBD_SETKCB 0x0058
|
|
#define KBD_SETREADNOTIFICATION 0x0059
|
|
#define KBD_ALTERKBDLED 0x005a
|
|
#define KBD_SETNLS 0x005c
|
|
#define KBD_CREATE 0x005d
|
|
#define KBD_DESTROY 0x005e
|
|
#define KBD_GETINPUTMODE 0x0071
|
|
#define KBD_GETINTERIMFLAG 0x0072
|
|
#define KBD_GETSHIFTSTATE 0x0073
|
|
#define KBD_READCHAR 0x0074
|
|
#define KBD_PEEKCHAR 0x0075
|
|
#define KBD_GETSESMGRHOTKEY 0x0076
|
|
#define KBD_GETKEYBDTYPE 0x0077
|
|
#define KBD_GETCODEPAGEID 0x0078
|
|
#define KBD_XLATESCAN 0x0079
|
|
#define KBD_QUERYKBDHARDWAREID 0x007a
|
|
#define KBD_QUERYKBDCODEPAGESUPPORT 0x007b
|
|
|
|
#define PRT_QUERYJOBHANDLE 0x0021
|
|
#define PRT_SETFRAMECTL 0x0042
|
|
#define PRT_SETINFINITERETRY 0x0044
|
|
#define PRT_INITPRINTER 0x0046
|
|
#define PRT_ACTIVATEFONT 0x0048
|
|
#define PRT_SETPRINTJOBTITLE 0x004d
|
|
#define PRT_SETIRQTIMEOUT 0x004e
|
|
#define PRT_GETFRAMECTL 0x0062
|
|
#define PRT_GETINFINITERETRY 0x0064
|
|
#define PRT_GETPRINTERSTATUS 0x0066
|
|
#define PRT_QUERYACTIVEFONT 0x0069
|
|
#define PRT_VERIFYFONT 0x006a
|
|
#define PRT_QUERYIRQTIMEOUT 0x006e
|
|
|
|
#define MOU_ALLOWPTRDRAW 0x0050
|
|
#define MOU_UPDATEDISPLAYMODE 0x0051
|
|
#define MOU_SCREENSWITCH 0x0052
|
|
#define MOU_SETSCALEFACTORS 0x0053
|
|
#define MOU_SETEVENTMASK 0x0054
|
|
#define MOU_SETHOTKEYBUTTON 0x0055
|
|
#define MOU_REASSIGNTHRESHOLDVALUES 0x0055 /* ? */
|
|
#define MOU_SETPTRSHAPE 0x0056
|
|
#define MOU_DRAWPTR 0x0057
|
|
#define MOU_UNMARKCOLLISIONAREA 0x0057 /* ? */
|
|
#define MOU_REMOVEPTR 0x0058
|
|
#define MOU_MARKCOLLISIONAREA 0x0058 /* ? */
|
|
#define MOU_SETPTRPOS 0x0059
|
|
#define MOU_SETPROTDRAWADDRESS 0x005a
|
|
#define MOU_SETREALDRAWADDRESS 0x005b
|
|
#define MOU_SETMOUSTATUS 0x005c
|
|
#define MOU_DISPLAYMODECHANGE 0x005d
|
|
#define MOU_GETBUTTONCOUNT 0x0060
|
|
#define MOU_GETMICKEYCOUNT 0x0061
|
|
#define MOU_GETMOUSTATUS 0x0062
|
|
#define MOU_READEVENTQUE 0x0063
|
|
#define MOU_GETQUESTATUS 0x0064
|
|
#define MOU_GETEVENTMASK 0x0065
|
|
#define MOU_GETSCALEFACTORS 0x0066
|
|
#define MOU_GETPTRPOS 0x0067
|
|
#define MOU_GETPTRSHAPE 0x0068
|
|
#define MOU_GETHOTKEYBUTTON 0x0069
|
|
#define MOU_QUERYTHRESHOLDVALUES 0x0069 /* ? */
|
|
#define MOU_VER 0x006a
|
|
#define MOU_QUERYPOINTERID 0x006b /* ? */
|
|
|
|
#define DSK_LOCKDRIVE 0x0000
|
|
#define DSK_UNLOCKDRIVE 0x0001
|
|
#define DSK_REDETERMINEMEDIA 0x0002
|
|
#define DSK_SETLOGICALMAP 0x0003
|
|
#define DSK_BEGINFORMAT 0x0004
|
|
#define DSK_BLOCKREMOVABLE 0x0020
|
|
#define DSK_GETLOGICALMAP 0x0021
|
|
#define DSK_UNLOCKEJECTMEDIA 0x0040
|
|
#define DSK_SETDEVICEPARAMS 0x0043
|
|
#define DSK_WRITETRACK 0x0044
|
|
#define DSK_FORMATVERIFY 0x0045
|
|
#define DSK_DISKETTECONTROL 0x005d
|
|
#define DSK_QUERYMEDIASENSE 0x0060
|
|
#define DSK_GETDEVICEPARAMS 0x0063
|
|
#define DSK_READTRACK 0x0064
|
|
#define DSK_VERIFYTRACK 0x0065
|
|
#define DSK_GETLOCKSTATUS 0x0066
|
|
|
|
#define PDSK_LOCKPHYSDRIVE 0x0000
|
|
#define PDSK_UNLOCKPHYSDRIVE 0x0001
|
|
#define PDSK_WRITEPHYSTRACK 0x0044
|
|
#define PDSK_GETPHYSDEVICEPARAMS 0x0063
|
|
#define PDSK_READPHYSTRACK 0x0064
|
|
#define PDSK_VERIFYPHYSTRACK 0x0065
|
|
|
|
#define POWER_SENDPOWEREVENT 0x0040
|
|
#define POWER_SETPOWEREVENTRES 0x0041
|
|
#define POWER_GETPOWERSTATUS 0x0060
|
|
#define POWER_GETPOWEREVENT 0x0061
|
|
#define POWER_GETPOWERINFO 0x0062
|
|
|
|
#define OEMHLP_GETOEMADAPTIONINFO 0x0000
|
|
#define OEMHLP_GETMACHINEINFO 0x0001
|
|
#define OEMHLP_GETDISPLAYCOMBCODE 0x0002
|
|
#define OEMHLP_GETVIDEOFONTS 0x0003
|
|
#define OEMHLP_READEISACONFIGINFO 0x0004
|
|
#define OEMHLP_GETROMBIOSINFO 0x0005
|
|
#define OEMHLP_GETMISCVIDEOINFO 0x0006
|
|
#define OEMHLP_GETVIDEOADAPTER 0x0007
|
|
#define OEMHLP_GETSVGAINFO 0x0008
|
|
#define OEMHLP_GETMEMINFO 0x0009
|
|
#define OEMHLP_GETDMQSINFO 0x000a
|
|
#define OEMHLP_PCI 0x000b
|
|
|
|
#define TESTCFG_SYS_GETBIOSADAPTER 0x0040
|
|
#define TESTCFG_SYS_ISSUEINIOINSTR 0x0041
|
|
#define TESTCFG_SYS_ISSUEOUTIOINSTR 0x0042
|
|
#define TESTCFG_SYS_GETBUSARCH 0x0060
|
|
#define TESTCFG_SYS_GETALLPOSIDS 0x0061
|
|
#define TESTCFG_SYS_GETALLEISAIDS 0x0062
|
|
|
|
#define CDROMDISK_RESETDRIVE 0x0040
|
|
#define CDROMDISK_EJECTDISK 0x0044
|
|
#define CDROMDISK_LOCKUNLOCKDOOR 0x0046
|
|
#define CDROMDISK_SEEK 0x0050
|
|
#define CDROMDISK_DEVICESTATUS 0x0060
|
|
#define CDROMDISK_GETDRIVER 0x0061
|
|
#define CDROMDISK_GETSECTORSIZE 0x0063
|
|
#define CDROMDISK_GETHEADLOC 0x0070
|
|
#define CDROMDISK_READLONG 0x0072
|
|
#define CDROMDISK_GETVOLUMESIZE 0x0078
|
|
#define CDROMDISK_GETUPC 0x0079
|
|
|
|
#define CDROMAUDIO_SETCHANNELCTRL 0x0040
|
|
#define CDROMAUDIO_PLAYAUDIO 0x0050
|
|
#define CDROMAUDIO_STOPAUDIO 0x0051
|
|
#define CDROMAUDIO_RESUMEAUDIO 0x0052
|
|
#define CDROMAUDIO_GETCHANNEL 0x0060
|
|
#define CDROMAUDIO_GETAUDIODISK 0x0061
|
|
#define CDROMAUDIO_GETAUDIOTRACK 0x0062
|
|
#define CDROMAUDIO_GETSUBCHANNELQ 0x0063
|
|
#define CDROMAUDIO_GETAUDIOSTATUS 0x0065
|
|
|
|
#define TOUCH_DEVDEP_SETCALIBCONST 0x0052
|
|
#define TOUCH_DEVDEP_READDATA 0x0053
|
|
#define TOUCH_DEVDEP_SETDATAMODE 0x0054
|
|
#define TOUCH_DEVDEP_SETCLICKLOCK 0x0055
|
|
#define TOUCH_DEVDEP_SETTOUCHTHRESHOLD 0x0056
|
|
#define TOUCH_DEVDEP_SETEMULXY 0x0057
|
|
#define TOUCH_DEVDEP_SETDATAREPORTRATE 0x0058
|
|
#define TOUCH_DEVDEP_SETLOWPASSFILTER 0x0059
|
|
#define TOUCH_DEVDEP_WRITEMEMLOC 0x005a
|
|
#define TOUCH_DEVDEP_GETCALIBCONST 0x0060
|
|
#define TOUCH_DEVDEP_GETDATAMODE 0x0061
|
|
#define TOUCH_DEVDEP_GETCLICKLOCK 0x0062
|
|
#define TOUCH_DEVDEP_GETTOUCHTHRESHOLD 0x0063
|
|
#define TOUCH_DEVDEP_GETEMULXY 0x0064
|
|
#define TOUCH_DEVDEP_GETDATAREPORTRATE 0x0065
|
|
#define TOUCH_DEVDEP_GETLOWPASSFILTER 0x0066
|
|
#define TOUCH_DEVDEP_READMEMLOC 0x0067
|
|
|
|
#define TOUCH_DEVINDEP_SETCOORDSYS 0x0050
|
|
#define TOUCH_DEVINDEP_SETSELECTMECH 0x0052
|
|
#define TOUCH_DEVINDEP_SETEVENTMASK 0x0053
|
|
#define TOUCH_DEVINDEP_SETQUEUESIZE 0x0054
|
|
#define TOUCH_DEVINDEP_SETEMULSTATE 0x0055
|
|
#define TOUCH_DEVINDEP_GETCOORDSYS 0x0060
|
|
#define TOUCH_DEVINDEP_GETSELECTMECH 0x0062
|
|
#define TOUCH_DEVINDEP_GETEVENTMASK 0x0063
|
|
#define TOUCH_DEVINDEP_GETQUEUESIZE 0x0064
|
|
#define TOUCH_DEVINDEP_GETEMULSTATE 0x0065
|
|
#define TOUCH_DEVINDEP_GETREADEVENTQUEUE 0x0066
|
|
|
|
#define MON_REGISTERMONITOR 0x0040
|
|
|
|
#define DEV_FLUSHINPUT 0x0001
|
|
#define DEV_FLUSHOUTPUT 0x0002
|
|
#define DEV_SYSTEMNOTIFYPDD 0x0041
|
|
#define DEV_QUERYMONSUPPORT 0x0060
|
|
|
|
#define RX_QUE_OVERRUN 0x0001
|
|
#define RX_HARDWARE_OVERRUN 0x0002
|
|
#define PARITY_ERROR 0x0004
|
|
#define FRAMING_ERROR 0x0008
|
|
|
|
#define CHAR_RECEIVED 0x0001
|
|
#define LAST_CHAR_SENT 0x0004
|
|
#define CTS_CHANGED 0x0008
|
|
#define DSR_CHANGED 0x0010
|
|
#define DCD_CHANGED 0x0020
|
|
#define BREAK_DETECTED 0x0040
|
|
#define ERROR_OCCURRED 0x0080
|
|
#define RI_DETECTED 0x0100
|
|
|
|
#define TX_WAITING_FOR_CTS 0x0001
|
|
#define TX_WAITING_FOR_DSR 0x0002
|
|
#define TX_WAITING_FOR_DCD 0x0004
|
|
#define TX_WAITING_FOR_XON 0x0008
|
|
#define TX_WAITING_TO_SEND_XON 0x0010
|
|
#define TX_WAITING_WHILE_BREAK_ON 0x0020
|
|
#define TX_WAITING_TO_SEND_IMM 0x0040
|
|
#define RX_WAITING_FOR_DSR 0x0080
|
|
|
|
#define WRITE_REQUEST_QUEUED 0x0001
|
|
#define DATA_IN_TX_QUE 0x0002
|
|
#define HARDWARE_TRANSMITTING 0x0004
|
|
#define CHAR_READY_TO_SEND_IMM 0x0008
|
|
#define WAITING_TO_SEND_XON 0x0010
|
|
#define WAITING_TO_SEND_XOFF 0x0020
|
|
|
|
#define CTS_ON 0x10
|
|
#define DSR_ON 0x20
|
|
#define RI_ON 0x40
|
|
#define DCD_ON 0x80
|
|
|
|
#define MODE_DTR_CONTROL 0x01
|
|
#define MODE_DTR_HANDSHAKE 0x02
|
|
#define MODE_CTS_HANDSHAKE 0x08
|
|
#define MODE_DSR_HANDSHAKE 0x10
|
|
#define MODE_DCD_HANDSHAKE 0x20
|
|
#define MODE_DSR_SENSITIVITY 0x40
|
|
|
|
#define MODE_AUTO_TRANSMIT 0x01
|
|
#define MODE_AUTO_RECEIVE 0x02
|
|
#define MODE_ERROR_CHAR 0x04
|
|
#define MODE_NULL_STRIPPING 0x08
|
|
#define MODE_BREAK_CHAR 0x10
|
|
#define MODE_RTS_CONTROL 0x40
|
|
#define MODE_RTS_HANDSHAKE 0x80
|
|
#define MODE_TRANSMIT_TOGGLE 0xc0
|
|
|
|
#define MODE_NO_WRITE_TIMEOUT 0x01
|
|
#define MODE_READ_TIMEOUT 0x02
|
|
#define MODE_WAIT_READ_TIMEOUT 0x04
|
|
#define MODE_NOWAIT_READ_TIMEOUT 0x06
|
|
|
|
#define DTR_ON 0x01
|
|
#define RTS_ON 0x02
|
|
|
|
#define DTR_OFF 0xfe
|
|
#define RTS_OFF 0xfd
|
|
|
|
#define ASCII_MODE 0x00
|
|
#define BINARY_MODE 0x80
|
|
|
|
#define CONVERSION_REQUEST 0x20
|
|
#define INTERIM_CHAR 0x80
|
|
|
|
#define HOTKEY_MAX_COUNT 0x0000
|
|
#define HOTKEY_CURRENT_COUNT 0x0001
|
|
|
|
#define KBD_DATA_RECEIVED 0x0001
|
|
#define KBD_DATA_BINARY 0x8000
|
|
|
|
#define KBD_READ_WAIT 0x0000
|
|
#define KBD_READ_NOWAIT 0x8000
|
|
|
|
#define SHIFT_REPORT_MODE 0x01
|
|
|
|
#define RIGHTSHIFT 0x0001
|
|
#define LEFTSHIFT 0x0002
|
|
#define CONTROL 0x0004
|
|
#define ALT 0x0008
|
|
#define SCROLLLOCK_ON 0x0010
|
|
#define NUMLOCK_ON 0x0020
|
|
#define CAPSLOCK_ON 0x0040
|
|
#define INSERT_ON 0x0080
|
|
#define LEFTCONTROL 0x0100
|
|
#define LEFTALT 0x0200
|
|
#define RIGHTCONTROL 0x0400
|
|
#define RIGHTALT 0x0800
|
|
#define SCROLLLOCK 0x1000
|
|
#define NUMLOCK 0x2000
|
|
#define CAPSLOCK 0x4000
|
|
#define SYSREQ 0x8000
|
|
|
|
#define PRINTER_TIMEOUT 0x0001
|
|
#define PRINTER_IO_ERROR 0x0008
|
|
#define PRINTER_SELECTED 0x0010
|
|
#define PRINTER_OUT_OF_PAPER 0x0020
|
|
#define PRINTER_ACKNOWLEDGED 0x0040
|
|
#define PRINTER_NOT_BUSY 0x0080
|
|
|
|
#define MOUSE_MOTION 0x0001
|
|
#define MOUSE_MOTION_WITH_BN1_DOWN 0x0002
|
|
#define MOUSE_BN1_DOWN 0x0004
|
|
#define MOUSE_MOTION_WITH_BN2_DOWN 0x0008
|
|
#define MOUSE_BN2_DOWN 0x0010
|
|
#define MOUSE_MOTION_WITH_BN3_DOWN 0x0020
|
|
#define MOUSE_BN3_DOWN 0x0040
|
|
|
|
#define MHK_BUTTON1 0x0001
|
|
#define MHK_BUTTON2 0x0002
|
|
#define MHK_BUTTON3 0x0004
|
|
|
|
#define MOU_NOWAIT 0x0000
|
|
#define MOU_WAIT 0x0001
|
|
|
|
#define MHK_NO_HOTKEY 0x0000
|
|
|
|
#define MOUSE_QUEUEBUSY 0x0001
|
|
#define MOUSE_BLOCKREAD 0x0002
|
|
#define MOUSE_FLUSH 0x0004
|
|
#define MOUSE_UNSUPPORTED_MODE 0x0008
|
|
#define MOUSE_DISABLED 0x0100
|
|
#define MOUSE_MICKEYS 0x0200
|
|
|
|
#define BUILD_BPB_FROM_MEDIUM 0x00
|
|
#define REPLACE_BPB_FOR_DEVICE 0x01
|
|
#define REPLACE_BPB_FOR_MEDIUM 0x02
|
|
|
|
#define DEVTYPE_48TPI 0x0000
|
|
#define DEVTYPE_96TPI 0x0001
|
|
#define DEVTYPE_35 0x0002
|
|
#define DEVTYPE_8SD 0x0003
|
|
#define DEVTYPE_8DD 0x0004
|
|
#define DEVTYPE_FIXED 0x0005
|
|
#define DEVTYPE_TAPE 0x0006
|
|
#define DEVTYPE_UNKNOWN 0x0007
|
|
|
|
#define SCREENDD_GETCURRENTBANK 0x00
|
|
#define SCREENDD_SETCURRENTBANK 0x01
|
|
#define SCREENDD_SVGA_ID 0x08
|
|
#define SCREENDD_SVGA_OEM 0x09
|
|
#define SCREENDD_UPDATEMEMORY 0x0a
|
|
#define SCREENDD_GETLINEARACCESS 0x0b
|
|
#define SCREENDD_GETGLOBALACCESS 0x0c
|
|
#define SCREENDD_FREEGLOBALACCESS 0x0d
|
|
#define SCREENDD_REGISTER_RING0_CALLER 0x0e
|
|
#define SCREENDD_WAIT_ON_RING0_CALLER 0x0f
|
|
#define SCREENDD_CATEGORY 0x80
|
|
#define SCREENDD_NAME "SCREEN$"
|
|
|
|
#define GETLINEAR_FLAG_MAPPHYSICAL 0x00000010
|
|
#define GETLINEAR_FLAG_MAPPROCESS 0x00000020
|
|
#define GETLINEAR_FLAG_MAPSHARED 0x00000400
|
|
#define GETLINEAR_FLAG_MAPATTACH 0x80000000
|
|
|
|
#define EGA_BIT 4
|
|
#define VGA_BIT 8
|
|
#define EGAVGA_BIT (EGA_BIT|VGA_BIT)
|
|
|
|
#define READ_BANK 0
|
|
#define WRITE_BANK 1
|
|
#define MODE_TEXT 0
|
|
#define MODE_PLANAR 1
|
|
#define MODE_LINEAR 2
|
|
|
|
typedef struct _DCBINFO
|
|
{
|
|
USHORT usWriteTimeout;
|
|
USHORT usReadTimeout;
|
|
BYTE fbCtlHndShake;
|
|
BYTE fbFlowReplace;
|
|
BYTE fbTimeout;
|
|
BYTE bErrorReplacementChar;
|
|
BYTE bBreakReplacementChar;
|
|
BYTE bXONChar;
|
|
BYTE bXOFFChar;
|
|
} DCBINFO;
|
|
typedef DCBINFO *PDCBINFO;
|
|
|
|
typedef struct _LINECONTROL
|
|
{
|
|
BYTE bDataBits;
|
|
BYTE bParity;
|
|
BYTE bStopBits;
|
|
BYTE fTransBreak;
|
|
} LINECONTROL;
|
|
typedef LINECONTROL *PLINECONTROL;
|
|
|
|
typedef struct _MODEMSTATUS
|
|
{
|
|
BYTE fbModemOn;
|
|
BYTE fbModemOff;
|
|
} MODEMSTATUS;
|
|
typedef MODEMSTATUS *PMODEMSTATUS;
|
|
|
|
typedef struct _KBDTYPE
|
|
{
|
|
USHORT usType;
|
|
USHORT reserved1;
|
|
USHORT reserved2;
|
|
} KBDTYPE;
|
|
typedef KBDTYPE *PKBDTYPE;
|
|
|
|
typedef struct _RATEDELAY
|
|
{
|
|
USHORT usDelay;
|
|
USHORT usRate;
|
|
} RATEDELAY;
|
|
typedef RATEDELAY *PRATEDELAY;
|
|
|
|
typedef struct _CODEPAGEINFO
|
|
{
|
|
PBYTE pbTransTable;
|
|
USHORT idCodePage;
|
|
USHORT idTable;
|
|
} CODEPAGEINFO;
|
|
typedef CODEPAGEINFO *PCODEPAGEINFO;
|
|
|
|
typedef struct _CPID
|
|
{
|
|
USHORT idCodePage;
|
|
USHORT Reserved;
|
|
} CPID;
|
|
typedef CPID *PCPID;
|
|
|
|
typedef struct _SHIFTSTATE
|
|
{
|
|
USHORT fsState;
|
|
BYTE fNLS;
|
|
} SHIFTSTATE;
|
|
typedef SHIFTSTATE *PSHIFTSTATE;
|
|
|
|
typedef struct _HOTKEY
|
|
{
|
|
USHORT fsHotKey;
|
|
UCHAR uchScancodeMake;
|
|
UCHAR uchScancodeBreak;
|
|
USHORT idHotKey;
|
|
} HOTKEY;
|
|
typedef HOTKEY *PHOTKEY;
|
|
|
|
typedef struct _PTRDRAWFUNCTION
|
|
{
|
|
USHORT usReturnCode;
|
|
PFN pfnDraw;
|
|
PCH pchDataSeg;
|
|
} PTRDRAWFUNCTION;
|
|
typedef PTRDRAWFUNCTION *PPTRDRAWFUNCTION;
|
|
|
|
typedef struct _PTRDRAWADDRESS
|
|
{
|
|
USHORT reserved;
|
|
PTRDRAWFUNCTION ptrdfnc;
|
|
} PTRDRAWADDRESS;
|
|
typedef PTRDRAWADDRESS *PPTRDRAWADDRESS;
|
|
|
|
typedef struct _PTRDRAWDATA
|
|
{
|
|
USHORT cb;
|
|
USHORT usConfig;
|
|
USHORT usFlag;
|
|
} PTRDRAWDATA;
|
|
typedef PTRDRAWDATA *PPTRDRAWDATA;
|
|
|
|
typedef struct _TRACKLAYOUT
|
|
{
|
|
BYTE bCommand;
|
|
USHORT usHead;
|
|
USHORT usCylinder;
|
|
USHORT usFirstSector;
|
|
USHORT cSectors;
|
|
struct
|
|
{
|
|
USHORT usSectorNumber;
|
|
USHORT usSectorSize;
|
|
} TrackTable[1];
|
|
} TRACKLAYOUT;
|
|
typedef TRACKLAYOUT *PTRACKLAYOUT;
|
|
|
|
typedef struct _TRACKFORMAT
|
|
{
|
|
BYTE bCommand;
|
|
USHORT usHead;
|
|
USHORT usCylinder;
|
|
USHORT usReserved;
|
|
USHORT cSectors;
|
|
struct
|
|
{
|
|
BYTE bCylinder;
|
|
BYTE bHead;
|
|
BYTE idSector;
|
|
BYTE bBytesSector;
|
|
} FormatTable[1];
|
|
} TRACKFORMAT;
|
|
typedef TRACKFORMAT *PTRACKFORMAT;
|
|
|
|
typedef struct _BIOSPARAMETERBLOCK
|
|
{
|
|
USHORT usBytesPerSector;
|
|
BYTE bSectorsPerCluster;
|
|
USHORT usReservedSectors;
|
|
BYTE cFATs;
|
|
USHORT cRootEntries;
|
|
USHORT cSectors;
|
|
BYTE bMedia;
|
|
USHORT usSectorsPerFAT;
|
|
USHORT usSectorsPerTrack;
|
|
USHORT cHeads;
|
|
ULONG cHiddenSectors;
|
|
ULONG cLargeSectors;
|
|
BYTE abReserved[6];
|
|
USHORT cCylinders;
|
|
BYTE bDeviceType;
|
|
USHORT fsDeviceAttr;
|
|
} BIOSPARAMETERBLOCK;
|
|
typedef BIOSPARAMETERBLOCK *PBIOSPARAMETERBLOCK;
|
|
|
|
typedef struct _DEVICEPARAMETERBLOCK
|
|
{
|
|
USHORT reserved1;
|
|
USHORT cCylinders;
|
|
USHORT cHeads;
|
|
USHORT cSectorsPerTrack;
|
|
USHORT reserved2;
|
|
USHORT reserved3;
|
|
USHORT reserved4;
|
|
USHORT reserved5;
|
|
} DEVICEPARAMETERBLOCK;
|
|
typedef DEVICEPARAMETERBLOCK *PDEVICEPARAMETERBLOCK;
|
|
|
|
typedef struct _MONITORPOSITION
|
|
{
|
|
USHORT fPosition;
|
|
USHORT index;
|
|
ULONG pbInBuf;
|
|
USHORT offOutBuf;
|
|
} MONITORPOSITION;
|
|
typedef MONITORPOSITION *PMONITORPOSITION;
|
|
|
|
typedef struct _FRAME
|
|
{
|
|
BYTE bCharsPerLine;
|
|
BYTE bLinesPerInch;
|
|
} FRAME;
|
|
typedef FRAME *PFRAME;
|
|
|
|
typedef struct _LDTADDRINFO
|
|
{
|
|
PULONG pulPhysAddr;
|
|
USHORT cb;
|
|
} LDTADDRINFO;
|
|
typedef LDTADDRINFO *PLDTADDRINFO;
|
|
|
|
typedef struct _SCREENGROUP
|
|
{
|
|
USHORT idScreenGrp;
|
|
USHORT fTerminate;
|
|
} SCREENGROUP;
|
|
typedef SCREENGROUP *PSCREENGROUP;
|
|
|
|
typedef struct _RXQUEUE
|
|
{
|
|
USHORT cch;
|
|
USHORT cb;
|
|
} RXQUEUE;
|
|
typedef RXQUEUE *PRXQUEUE;
|
|
|
|
typedef struct _GETLINIOCTLDATA
|
|
{
|
|
ULONG PacketLength;
|
|
ULONG PhysicalAddress;
|
|
ULONG ApertureSize;
|
|
PBYTE LinearAddress;
|
|
ULONG LinearFlags;
|
|
} GETLINIOCTLDATA;
|
|
typedef GETLINIOCTLDATA *PGETLINIOCTLDATA;
|
|
|
|
typedef struct _BANKINFO
|
|
{
|
|
ULONG ulBankLength;
|
|
USHORT usBank;
|
|
USHORT usVideoModeType;
|
|
USHORT usReadWriteMode;
|
|
} BANKINFO;
|
|
|
|
typedef struct _GLOBALIOCTLDATA
|
|
{
|
|
ULONG ProcessAddress;
|
|
ULONG AddressLength;
|
|
ULONG GlobalAddress;
|
|
} GLOBALIOCTLDATA;
|
|
|
|
typedef struct _OEMSVGAINFO
|
|
{
|
|
USHORT AdapterType;
|
|
USHORT ChipType;
|
|
ULONG Memory;
|
|
} OEMSVGAINFO;
|
|
|
|
typedef struct _OEMINFO
|
|
{
|
|
ULONG OEMLength;
|
|
USHORT Manufacturer;
|
|
ULONG ManufacturerData;
|
|
} OEMINFO;
|
|
|
|
typedef struct _GETGLOBALPACKET
|
|
{
|
|
ULONG GlobalPktLength;
|
|
GLOBALIOCTLDATA GlobalPktData[1];
|
|
} GETGLOBALPACKET;
|
|
|
|
#endif /* INCL_DOSDEVIOCTL */
|
|
|
|
/* -------------------- NATIONAL LANGUAGE SUPPORT ------------------------- */
|
|
|
|
#if defined (INCL_DOSNLS)
|
|
|
|
typedef struct _COUNTRYCODE
|
|
{
|
|
ULONG country;
|
|
ULONG codepage;
|
|
} COUNTRYCODE;
|
|
typedef COUNTRYCODE *PCOUNTRYCODE;
|
|
|
|
typedef struct _COUNTRYINFO
|
|
{
|
|
ULONG country;
|
|
ULONG codepage;
|
|
ULONG fsDateFmt;
|
|
CHAR szCurrency[5];
|
|
CHAR szThousandsSeparator[2];
|
|
CHAR szDecimal[2];
|
|
CHAR szDateSeparator[2];
|
|
CHAR szTimeSeparator[2];
|
|
UCHAR fsCurrencyFmt;
|
|
UCHAR cDecimalPlace;
|
|
UCHAR fsTimeFmt;
|
|
USHORT abReserved1[2];
|
|
CHAR szDataSeparator[2];
|
|
USHORT abReserved2[5];
|
|
} COUNTRYINFO;
|
|
typedef COUNTRYINFO *PCOUNTRYINFO;
|
|
|
|
|
|
ULONG DosMapCase (ULONG ulLength, __const__ COUNTRYCODE *pCountryCode,
|
|
PCHAR pchString);
|
|
ULONG DosQueryCollate (ULONG ulLength, __const__ COUNTRYCODE *pCountryCode,
|
|
PCHAR pchBuffer, PULONG pulDataLength);
|
|
ULONG DosQueryCp (ULONG ulLength, PULONG pCodePageList, PULONG pDataLength);
|
|
ULONG DosQueryCtryInfo (ULONG ulLength, PCOUNTRYCODE pCountryCode,
|
|
PCOUNTRYINFO pCountryInfo, PULONG pulDataLength);
|
|
ULONG DosQueryDBCSEnv (ULONG ulLength, PCOUNTRYCODE pCountryCode, PCHAR pBuf);
|
|
ULONG DosSetProcessCp (ULONG ulCodePage);
|
|
|
|
#endif /* INCL_DOSNLS */
|
|
|
|
/* -------------------------- DYNAMIC LINKING ----------------------------- */
|
|
|
|
#if defined (INCL_DOSMODULEMGR)
|
|
|
|
#define PT_16BIT 0
|
|
#define PT_32BIT 1
|
|
|
|
|
|
ULONG DosFreeModule (HMODULE hmod);
|
|
ULONG DosLoadModule (PSZ pszObject, ULONG uObjectLen, PCSZ pszModule,
|
|
PHMODULE phmod);
|
|
ULONG DosQueryModuleHandle (PCSZ pszModname, PHMODULE phmod);
|
|
ULONG DosQueryModuleName (HMODULE hmod, ULONG ulNameLength, PCHAR pNameBuf);
|
|
ULONG DosQueryProcAddr (HMODULE hmod, ULONG ulOrdinal, PCSZ pszProcName,
|
|
PPFN pProcAddr);
|
|
ULONG DosQueryProcType (HMODULE hmod, ULONG ulOrdinal, PCSZ pszProcName,
|
|
PULONG pulProcType);
|
|
|
|
#endif /* INCL_DOSMODULEMGR */
|
|
|
|
/* ----------------------------- RESOURCES -------------------------------- */
|
|
|
|
#if defined (INCL_DOSRESOURCES) || !defined (INCL_NOCOMMON)
|
|
|
|
#define RT_POINTER 1
|
|
#define RT_BITMAP 2
|
|
#define RT_MENU 3
|
|
#define RT_DIALOG 4
|
|
#define RT_STRING 5
|
|
#define RT_FONTDIR 6
|
|
#define RT_FONT 7
|
|
#define RT_ACCELTABLE 8
|
|
#define RT_RCDATA 9
|
|
#define RT_MESSAGE 10
|
|
#define RT_DLGINCLUDE 11
|
|
#define RT_VKEYTBL 12
|
|
#define RT_KEYTBL 13
|
|
#define RT_CHARTBL 14
|
|
#define RT_DISPLAYINFO 15
|
|
#define RT_FKASHORT 16
|
|
#define RT_FKALONG 17
|
|
#define RT_HELPTABLE 18
|
|
#define RT_HELPSUBTABLE 19
|
|
#define RT_FDDIR 20
|
|
#define RT_FD 21
|
|
#define RT_MAX 22
|
|
|
|
#define RF_ORDINALID 0x80000000L
|
|
|
|
|
|
ULONG DosFreeResource (PVOID pResAddr);
|
|
ULONG DosGetResource (HMODULE hmod, ULONG ulTypeID, ULONG ulNameID,
|
|
PPVOID pOffset);
|
|
ULONG DosQueryResourceSize (HMODULE hmod, ULONG ulTypeID, ULONG ulNameID,
|
|
PULONG pulSize);
|
|
|
|
#endif /* INCL_DOSRESOURCES || !INCL_NOCOMMON */
|
|
|
|
/* -------------------------------- TASKS --------------------------------- */
|
|
|
|
#if defined (INCL_DOSPROCESS) || !defined (INCL_NOCOMMON)
|
|
|
|
#define EXIT_THREAD 0
|
|
#define EXIT_PROCESS 1
|
|
|
|
ULONG DosBeep (ULONG ulFrequency, ULONG ulDuration);
|
|
VOID DosExit (ULONG ulAction, ULONG ulResult) __attribute__ ((__noreturn__));
|
|
|
|
#endif /* INCL_DOSPROCESS || !defined (INCL_NOCOMMON) */
|
|
|
|
|
|
#if defined (INCL_DOSPROCESS)
|
|
|
|
#define CREATE_READY 0
|
|
#define CREATE_SUSPENDED 1
|
|
|
|
#define STACK_SPARSE 0
|
|
#define STACK_COMMITTED 2
|
|
|
|
#define DCWA_PROCESS 0
|
|
#define DCWA_PROCESSTREE 1
|
|
|
|
#define DCWW_WAIT 0
|
|
#define DCWW_NOWAIT 1
|
|
|
|
#define DKP_PROCESSTREE 0
|
|
#define DKP_PROCESS 1
|
|
|
|
#define EXEC_SYNC 0
|
|
#define EXEC_ASYNC 1
|
|
#define EXEC_ASYNCRESULT 2
|
|
#define EXEC_TRACE 3
|
|
#define EXEC_BACKGROUND 4
|
|
#define EXEC_LOAD 5
|
|
#define EXEC_ASYNCRESULTDB 6
|
|
|
|
#define EXLST_ADD 1
|
|
#define EXLST_REMOVE 2
|
|
#define EXLST_EXIT 3
|
|
|
|
#define PRTYC_NOCHANGE 0
|
|
#define PRTYC_IDLETIME 1
|
|
#define PRTYC_REGULAR 2
|
|
#define PRTYC_TIMECRITICAL 3
|
|
#define PRTYC_FOREGROUNDSERVER 4
|
|
|
|
#define PRTYD_MINIMUM (-31)
|
|
#define PRTYD_MAXIMUM 31
|
|
|
|
#define PRTYS_PROCESS 0
|
|
#define PRTYS_PROCESSTREE 1
|
|
#define PRTYS_THREAD 2
|
|
|
|
#define TC_EXIT 0
|
|
#define TC_HARDERROR 1
|
|
#define TC_TRAP 2
|
|
#define TC_KILLPROCESS 3
|
|
#define TC_EXCEPTION 4
|
|
|
|
|
|
typedef struct _RESULTCODES
|
|
{
|
|
ULONG codeTerminate;
|
|
ULONG codeResult;
|
|
} RESULTCODES;
|
|
typedef RESULTCODES *PRESULTCODES;
|
|
|
|
typedef struct tib2_s
|
|
{
|
|
ULONG tib2_ultid;
|
|
ULONG tib2_ulpri;
|
|
ULONG tib2_version;
|
|
USHORT tib2_usMCCount;
|
|
USHORT tib2_fMCForceFlag;
|
|
} TIB2;
|
|
typedef TIB2 *PTIB2;
|
|
|
|
typedef struct tib_s
|
|
{
|
|
PVOID tib_pexchain;
|
|
PVOID tib_pstack;
|
|
PVOID tib_pstacklimit;
|
|
PTIB2 tib_ptib2;
|
|
ULONG tib_version;
|
|
ULONG tib_ordinal;
|
|
} TIB;
|
|
typedef TIB *PTIB;
|
|
|
|
typedef struct pib_s
|
|
{
|
|
ULONG pib_ulpid;
|
|
ULONG pib_ulppid;
|
|
ULONG pib_hmte;
|
|
PCHAR pib_pchcmd;
|
|
PCHAR pib_pchenv;
|
|
ULONG pib_flstatus;
|
|
ULONG pib_ultype;
|
|
} PIB;
|
|
typedef PIB *PPIB;
|
|
|
|
typedef VOID (*PFNTHREAD)(ULONG ulThreadArg);
|
|
typedef VOID (*PFNEXITLIST)(ULONG ulArg);
|
|
|
|
|
|
ULONG DosAllocThreadLocalMemory (ULONG cb, PULONG *p);
|
|
ULONG DosCreateThread (PTID ptidThreadID, PFNTHREAD pfnThreadAddr,
|
|
ULONG ulThreadArg, ULONG ulFlags, ULONG ulStackSize);
|
|
ULONG DosEnterCritSec (VOID);
|
|
ULONG DosExecPgm (PCHAR pObjname, LONG lObjnameLength, ULONG ulFlagS,
|
|
PCSZ pszArg, PCSZ pszEnv, PRESULTCODES pReturnCodes, PCSZ pszName);
|
|
ULONG DosExitCritSec (VOID);
|
|
ULONG DosExitList (ULONG ulOrder, PFNEXITLIST pfn);
|
|
ULONG DosFreeThreadLocalMemory (ULONG *p);
|
|
ULONG DosGetInfoBlocks (PTIB *ptib, PPIB *ppib);
|
|
ULONG DosKillProcess (ULONG ulAction, PID pid);
|
|
ULONG DosKillThread (TID tid);
|
|
ULONG DosResumeThread (TID tid);
|
|
ULONG DosSetPriority (ULONG ulScope, ULONG ulClass, LONG lDelta, ULONG ulID);
|
|
|
|
#define STDCALL __attribute__ ((stdcall))
|
|
//#define CDECL __attribute__ ((cdecl))
|
|
//#define CALLBACK WINAPI
|
|
//#define PASCAL WINAPI
|
|
|
|
#define WINAPI STDCALL
|
|
//#define APIENTRY STDCALL
|
|
|
|
//ULONG WINAPI DosSleep (ULONG ulInterval);
|
|
ULONG DosSleep (ULONG ulInterval);
|
|
|
|
ULONG DosSuspendThread (TID tid);
|
|
ULONG DosVerifyPidTid (PID pid, TID tid);
|
|
ULONG DosWaitChild (ULONG ulAction, ULONG ulWait, PRESULTCODES pReturnCodes,
|
|
PPID ppidOut, PID pidIn);
|
|
ULONG DosWaitThread (PTID ptid, ULONG ulWait);
|
|
|
|
#endif /* INCL_DOSPROCESS */
|
|
|
|
/* ------------------------------ SESSIONS -------------------------------- */
|
|
|
|
#if defined (INCL_DOSSESMGR) || defined (INCL_DOSFILEMGR)
|
|
|
|
#define FAPPTYP_NOTSPEC 0x0000
|
|
#define FAPPTYP_NOTWINDOWCOMPAT 0x0001
|
|
#define FAPPTYP_WINDOWCOMPAT 0x0002
|
|
#define FAPPTYP_WINDOWAPI 0x0003
|
|
#define FAPPTYP_BOUND 0x0008
|
|
#define FAPPTYP_DLL 0x0010
|
|
#define FAPPTYP_DOS 0x0020
|
|
#define FAPPTYP_PHYSDRV 0x0040
|
|
#define FAPPTYP_VIRTDRV 0x0080
|
|
#define FAPPTYP_PROTDLL 0x0100
|
|
#define FAPPTYP_WINDOWSREAL 0x0200
|
|
#define FAPPTYP_WINDOWSPROT 0x0400
|
|
#define FAPPTYP_WINDOWSPROT31 0x1000
|
|
#define FAPPTYP_32BIT 0x4000
|
|
#define FAPPTYP_EXETYPE 0x0003
|
|
#define FAPPTYP_RESERVED (~(FAPPTYP_WINDOWAPI | FAPPTYP_BOUND | \
|
|
FAPPTYP_DLL | FAPPTYP_DOS | \
|
|
FAPPTYP_PHYSDRV | FAPPTYP_VIRTDRV | \
|
|
FAPPTYP_PROTDLL | FAPPTYP_32BIT))
|
|
|
|
#endif /* INCL_DOSSESMGR || INCL_DOSFILEMGR */
|
|
|
|
#if defined (INCL_DOSSESMGR)
|
|
|
|
#define SET_SESSION_UNCHANGED 0
|
|
#define SET_SESSION_SELECTABLE 1
|
|
#define SET_SESSION_NON_SELECTABLE 2
|
|
#define SET_SESSION_BOND 1
|
|
#define SET_SESSION_NO_BOND 2
|
|
|
|
#define SSF_RELATED_INDEPENDENT 0
|
|
#define SSF_RELATED_CHILD 1
|
|
|
|
#define SSF_FGBG_FORE 0
|
|
#define SSF_FGBG_BACK 1
|
|
|
|
#define SSF_TRACEOPT_NONE 0
|
|
#define SSF_TRACEOPT_TRACE 1
|
|
#define SSF_TRACEOPT_TRACEALL 2
|
|
|
|
#define SSF_INHERTOPT_SHELL 0
|
|
#define SSF_INHERTOPT_PARENT 1
|
|
|
|
#define SSF_TYPE_DEFAULT 0
|
|
#define SSF_TYPE_FULLSCREEN 1
|
|
#define SSF_TYPE_WINDOWABLEVIO 2
|
|
#define SSF_TYPE_PM 3
|
|
#define SSF_TYPE_VDM 4
|
|
#define SSF_TYPE_GROUP 5
|
|
#define SSF_TYPE_DLL 6
|
|
#define SSF_TYPE_WINDOWEDVDM 7
|
|
#define SSF_TYPE_PDD 8
|
|
#define SSF_TYPE_VDD 9
|
|
|
|
#define SSF_CONTROL_VISIBLE 0x0000
|
|
#define SSF_CONTROL_INVISIBLE 0x0001
|
|
#define SSF_CONTROL_MAXIMIZE 0x0002
|
|
#define SSF_CONTROL_MINIMIZE 0x0004
|
|
#define SSF_CONTROL_NOAUTOCLOSE 0x0008
|
|
#define SSF_CONTROL_SETPOS 0x8000
|
|
|
|
#define STOP_SESSION_SPECIFIED 0
|
|
#define STOP_SESSION_ALL 1
|
|
|
|
typedef struct _STARTDATA
|
|
{
|
|
USHORT Length;
|
|
USHORT Related;
|
|
USHORT FgBg;
|
|
USHORT TraceOpt;
|
|
PSZ PgmTitle;
|
|
PSZ PgmName;
|
|
PBYTE PgmInputs;
|
|
PBYTE TermQ;
|
|
PBYTE Environment;
|
|
USHORT InheritOpt;
|
|
USHORT SessionType;
|
|
PSZ IconFile;
|
|
ULONG PgmHandle;
|
|
USHORT PgmControl;
|
|
USHORT InitXPos;
|
|
USHORT InitYPos;
|
|
USHORT InitXSize;
|
|
USHORT InitYSize;
|
|
USHORT Reserved;
|
|
PSZ ObjectBuffer;
|
|
ULONG ObjectBuffLen;
|
|
} STARTDATA;
|
|
typedef STARTDATA *PSTARTDATA;
|
|
|
|
typedef struct _STATUSDATA
|
|
{
|
|
USHORT Length;
|
|
USHORT SelectInd;
|
|
USHORT BondInd;
|
|
} STATUSDATA;
|
|
typedef STATUSDATA *PSTATUSDATA;
|
|
|
|
ULONG DosQueryAppType (PCSZ pszName, PULONG pulFlags);
|
|
ULONG DosSelectSession (ULONG ulIDSession);
|
|
ULONG DosSetSession (ULONG ulIDSession, PSTATUSDATA psd);
|
|
ULONG DosStartSession (PSTARTDATA psd, PULONG pulIDSession, PPID ppid);
|
|
ULONG DosStopSession (ULONG ulScope, ULONG ulIDSession);
|
|
|
|
#endif /* INCL_DOSSESMGR */
|
|
|
|
/* ----------------------------- SEMAPHORES ------------------------------- */
|
|
|
|
#if defined (INCL_DOSSEMAPHORES) || !defined (INCL_NOCOMMON)
|
|
|
|
#define DC_SEM_SHARED 0x01
|
|
#define DCMW_WAIT_ANY 0x02
|
|
#define DCMW_WAIT_ALL 0x04
|
|
|
|
#define SEM_INDEFINITE_WAIT ((ULONG)-1)
|
|
#define SEM_IMMEDIATE_RETURN 0
|
|
|
|
typedef ULONG HEV;
|
|
typedef HEV *PHEV;
|
|
|
|
typedef struct _PSEMRECORD /* Note 1 */
|
|
{
|
|
HSEM hsemCur;
|
|
ULONG ulUser;
|
|
} SEMRECORD;
|
|
typedef SEMRECORD *PSEMRECORD;
|
|
|
|
#endif /* INCL_DOSSEMAPHORES || !INCL_NOCOMMON */
|
|
|
|
#if defined (INCL_DOSSEMAPHORES)
|
|
|
|
ULONG DosCloseEventSem (HEV hev);
|
|
ULONG DosCreateEventSem (PCSZ pszName, PHEV phev, ULONG ulAttr, BOOL32 fState);
|
|
ULONG DosOpenEventSem (PCSZ pszName, PHEV phev);
|
|
ULONG DosPostEventSem (HEV hev);
|
|
ULONG DosQueryEventSem (HEV hev, PULONG pulCount);
|
|
ULONG DosResetEventSem (HEV hev, PULONG pulCount);
|
|
ULONG DosWaitEventSem (HEV hev, ULONG ulTimeout);
|
|
|
|
ULONG DosCloseMutexSem (HMTX hmtx);
|
|
ULONG DosCreateMutexSem (PCSZ pszName, PHMTX phmtx, ULONG ulAttr,
|
|
BOOL32 fState);
|
|
ULONG DosOpenMutexSem (PCSZ pszName, PHMTX phmtx);
|
|
ULONG DosQueryMutexSem (HMTX hmtx, PPID ppid, PTID ptid, PULONG pulCount);
|
|
ULONG DosReleaseMutexSem (HMTX hmtx);
|
|
ULONG DosRequestMutexSem (HMTX hmtx, ULONG ulTimeout);
|
|
|
|
ULONG DosAddMuxWaitSem (HMUX hmux, PSEMRECORD pSemRec);
|
|
ULONG DosCloseMuxWaitSem (HMUX hmux);
|
|
ULONG DosCreateMuxWaitSem (PCSZ pszName, PHMUX phmux, ULONG ulcSemRec,
|
|
PSEMRECORD pSemRec, ULONG ulAttr);
|
|
ULONG DosDeleteMuxWaitSem (HMUX hmux, HSEM hSem);
|
|
ULONG DosOpenMuxWaitSem (PCSZ pszName, PHMUX phmux);
|
|
ULONG DosQueryMuxWaitSem (HMUX hmux, PULONG pulcSemRec, PSEMRECORD pSemRec,
|
|
PULONG pulAttr);
|
|
ULONG DosWaitMuxWaitSem (HMUX hmux, ULONG ulTimeout, PULONG pulUser);
|
|
|
|
#endif /* INCL_DOSSEMAPHORES */
|
|
|
|
/* ---------------------------- NAMED PIPES ------------------------------- */
|
|
|
|
#define NP_INDEFINITE_WAIT ((ULONG)-1)
|
|
#define NP_DEFAULT_WAIT 0
|
|
|
|
#define NP_STATE_DISCONNECTED 1
|
|
#define NP_STATE_LISTENING 2
|
|
#define NP_STATE_CONNECTED 3
|
|
#define NP_STATE_CLOSING 4
|
|
|
|
#define NP_ACCESS_INBOUND 0x0000
|
|
#define NP_ACCESS_OUTBOUND 0x0001
|
|
#define NP_ACCESS_DUPLEX 0x0002
|
|
#define NP_INHERIT 0x0000
|
|
#define NP_NOINHERIT 0x0080
|
|
#define NP_WRITEBEHIND 0x0000
|
|
#define NP_NOWRITEBEHIND 0x4000
|
|
|
|
#define NP_READMODE_BYTE 0x0000
|
|
#define NP_READMODE_MESSAGE 0x0100
|
|
#define NP_TYPE_BYTE 0x0000
|
|
#define NP_TYPE_MESSAGE 0x0400
|
|
#define NP_END_CLIENT 0x0000
|
|
#define NP_END_SERVER 0x4000
|
|
#define NP_WAIT 0x0000
|
|
#define NP_NOWAIT 0x8000
|
|
#define NP_UNLIMITED_INSTANCES 0x00ff
|
|
|
|
#define NP_NBLK NO_WAIT
|
|
#define NP_SERVER NP_END_SERVER
|
|
#define NP_WMESG NP_TYPE_MESSAGE
|
|
#define NP_RMESG NP_READMODE_MESSAGE
|
|
#define NP_ICOUNT 0x00ff
|
|
|
|
#define NPSS_EOI 0
|
|
#define NPSS_RDATA 1
|
|
#define NPSS_WSPACE 2
|
|
#define NPSS_CLOSE 3
|
|
|
|
#define NPSS_WAIT 0x0001
|
|
|
|
typedef struct _AVAILDATA
|
|
{
|
|
USHORT cbpipe;
|
|
USHORT cbmessage;
|
|
} AVAILDATA;
|
|
typedef AVAILDATA *PAVAILDATA;
|
|
|
|
typedef struct _PIPEINFO
|
|
{
|
|
USHORT cbOut;
|
|
USHORT cbIn;
|
|
BYTE cbMaxInst;
|
|
BYTE cbCurInst;
|
|
BYTE cbName;
|
|
CHAR szName[1];
|
|
} PIPEINFO;
|
|
typedef PIPEINFO *PPIPEINFO;
|
|
|
|
typedef struct _PIPESEMSTATE
|
|
{
|
|
BYTE fStatus;
|
|
BYTE fFlag;
|
|
USHORT usKey;
|
|
USHORT usAvail;
|
|
} PIPESEMSTATE;
|
|
typedef PIPESEMSTATE *PPIPESEMSTATE;
|
|
|
|
ULONG DosCallNPipe (PCSZ pszName, PVOID pInbuf, ULONG ulInbufLength,
|
|
PVOID pOutbuf, ULONG ulOutbufSize, PULONG pulActualLength,
|
|
ULONG ulTimeout);
|
|
ULONG DosConnectNPipe (HPIPE hpipe);
|
|
ULONG DosCreateNPipe (PCSZ pszName, PHPIPE phpipe, ULONG ulOpenMode,
|
|
ULONG ulPipeMode, ULONG ulInbufLength, ULONG ulOutbufLength,
|
|
ULONG ulTimeout);
|
|
ULONG DosDisConnectNPipe (HPIPE hpipe);
|
|
ULONG DosPeekNPipe (HPIPE hpipe, PVOID pBuf, ULONG ulBufLength,
|
|
PULONG pulActualLength, PAVAILDATA pAvail, PULONG pulState);
|
|
ULONG DosQueryNPHState (HPIPE hpipe, PULONG pulState);
|
|
ULONG DosQueryNPipeInfo (HPIPE hpipe, ULONG ulInfoLevel, PVOID pBuf,
|
|
ULONG ulBufLength);
|
|
ULONG DosQueryNPipeSemState (HSEM hsem, PPIPESEMSTATE pState,
|
|
ULONG ulBufLength);
|
|
ULONG DosRawReadNPipe (PCSZ pszName, ULONG ulCount, PULONG pulLength,
|
|
PVOID pBuf);
|
|
ULONG DosRawWriteNPipe (PCSZ pszName, ULONG ulCount);
|
|
ULONG DosSetNPHState (HPIPE hpipe, ULONG ulState);
|
|
ULONG DosSetNPipeSem (HPIPE hpipe, HSEM hsem, ULONG ulKey);
|
|
ULONG DosTransactNPipe (HPIPE hpipe, PVOID pOutbuf, ULONG ulOutbufLength,
|
|
PVOID pInbuf, ULONG ulInbufLength, PULONG pulBytesRead);
|
|
ULONG DosWaitNPipe (PCSZ pszName, ULONG ulTimeout);
|
|
|
|
/* ------------------------------- QUEUES --------------------------------- */
|
|
|
|
#if defined (INCL_DOSQUEUES)
|
|
|
|
#define QUE_FIFO 0x0000
|
|
#define QUE_LIFO 0x0001
|
|
#define QUE_PRIORITY 0x0002
|
|
#define QUE_NOCONVERT_ADDRESS 0x0000
|
|
#define QUE_CONVERT_ADDRESS 0x0004
|
|
|
|
typedef struct _REQUESTDATA
|
|
{
|
|
PID pid;
|
|
ULONG ulData;
|
|
} REQUESTDATA;
|
|
typedef REQUESTDATA *PREQUESTDATA;
|
|
|
|
ULONG DosCreatePipe (PHFILE phfReadHandle, PHFILE phfWriteHandle,
|
|
ULONG ulPipeSize);
|
|
|
|
ULONG DosCloseQueue (HQUEUE hq);
|
|
ULONG DosCreateQueue (PHQUEUE phq, ULONG ulPriority, PCSZ pszName);
|
|
ULONG DosOpenQueue (PPID ppid, PHQUEUE phq, PCSZ pszName);
|
|
ULONG DosPeekQueue (HQUEUE hq, PREQUESTDATA pRequest, PULONG pulDataLength,
|
|
PPVOID pDataAddress, PULONG pulElement, BOOL32 fNowait, PBYTE pPriority,
|
|
HEV hsem);
|
|
ULONG DosPurgeQueue (HQUEUE hq);
|
|
ULONG DosQueryQueue (HQUEUE hq, PULONG pulCount);
|
|
ULONG DosReadQueue (HQUEUE hq, PREQUESTDATA pRequest, PULONG pulDataLength,
|
|
PPVOID pDataAddress, ULONG pulElement, BOOL32 fNowait, PBYTE pPriority,
|
|
HEV hsem);
|
|
ULONG DosWriteQueue (HQUEUE hq, ULONG ulRequest, ULONG ulDataLength,
|
|
PVOID pData, ULONG ulPriority);
|
|
|
|
#endif /* INCL_DOSQUEUES */
|
|
|
|
/* --------------------------- EXCEPTIONS --------------------------------- */
|
|
|
|
#if defined (INCL_DOSEXCEPTIONS)
|
|
|
|
#define CONTEXT_CONTROL 0x0001
|
|
#define CONTEXT_INTEGER 0x0002
|
|
#define CONTEXT_SEGMENTS 0x0004
|
|
#define CONTEXT_FLOATING_POINT 0x0008
|
|
#define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_INTEGER | \
|
|
CONTEXT_SEGMENTS | CONTEXT_FLOATING_POINT)
|
|
|
|
#define EH_NONCONTINUABLE 0x0001
|
|
#define EH_UNWINDING 0x0002
|
|
#define EH_EXIT_UNWIND 0x0004
|
|
#define EH_STACK_INVALID 0x0008
|
|
#define EH_NESTED_CALL 0x0010
|
|
|
|
#define SIG_UNSETFOCUS 0
|
|
#define SIG_SETFOCUS 1
|
|
|
|
#define UNWIND_ALL 0
|
|
|
|
#define XCPT_CONTINUE_SEARCH 0x00000000
|
|
#define XCPT_CONTINUE_EXECUTION 0xffffffff
|
|
#define XCPT_CONTINUE_STOP 0x00716668
|
|
|
|
#define XCPT_SIGNAL_INTR 1
|
|
#define XCPT_SIGNAL_KILLPROC 3
|
|
#define XCPT_SIGNAL_BREAK 4
|
|
|
|
#define XCPT_FATAL_EXCEPTION 0xc0000000
|
|
#define XCPT_SEVERITY_CODE 0xc0000000
|
|
#define XCPT_CUSTOMER_CODE 0x20000000
|
|
#define XCPT_FACILITY_CODE 0x1fff0000
|
|
#define XCPT_EXCEPTION_CODE 0x0000ffff
|
|
|
|
#define XCPT_UNKNOWN_ACCESS 0x00000000
|
|
#define XCPT_READ_ACCESS 0x00000001
|
|
#define XCPT_WRITE_ACCESS 0x00000002
|
|
#define XCPT_EXECUTE_ACCESS 0x00000004
|
|
#define XCPT_SPACE_ACCESS 0x00000008
|
|
#define XCPT_LIMIT_ACCESS 0x00000010
|
|
#define XCPT_DATA_UNKNOWN 0xffffffff
|
|
|
|
#define XCPT_GUARD_PAGE_VIOLATION 0x80000001
|
|
#define XCPT_UNABLE_TO_GROW_STACK 0x80010001
|
|
#define XCPT_ACCESS_VIOLATION 0xc0000005
|
|
#define XCPT_IN_PAGE_ERROR 0xc0000006
|
|
#define XCPT_ILLEGAL_INSTRUCTION 0xc000001c
|
|
#define XCPT_INVALID_LOCK_SEQUENCE 0xc000001d
|
|
#define XCPT_NONCONTINUABLE_EXCEPTION 0xc0000024
|
|
#define XCPT_INVALID_DISPOSITION 0xc0000025
|
|
#define XCPT_UNWIND 0xc0000026
|
|
#define XCPT_BAD_STACK 0xc0000027
|
|
#define XCPT_INVALID_UNWIND_TARGET 0xc0000028
|
|
#define XCPT_ARRAY_BOUNDS_EXCEEDED 0xc0000093
|
|
#define XCPT_FLOAT_DENORMAL_OPERAND 0xc0000094
|
|
#define XCPT_FLOAT_DIVIDE_BY_ZERO 0xc0000095
|
|
#define XCPT_FLOAT_INEXACT_RESULT 0xc0000096
|
|
#define XCPT_FLOAT_INVALID_OPERATION 0xc0000097
|
|
#define XCPT_FLOAT_OVERFLOW 0xc0000098
|
|
#define XCPT_FLOAT_STACK_CHECK 0xc0000099
|
|
#define XCPT_FLOAT_UNDERFLOW 0xc000009a
|
|
#define XCPT_INTEGER_DIVIDE_BY_ZERO 0xc000009b
|
|
#define XCPT_INTEGER_OVERFLOW 0xc000009c
|
|
#define XCPT_PRIVILEGED_INSTRUCTION 0xc000009d
|
|
#define XCPT_DATATYPE_MISALIGNMENT 0xc000009e
|
|
#define XCPT_BREAKPOINT 0xc000009f
|
|
#define XCPT_SINGLE_STEP 0xc00000a0
|
|
#define XCPT_PROCESS_TERMINATE 0xc0010001
|
|
#define XCPT_ASYNC_PROCESS_TERMINATE 0xc0010002
|
|
#define XCPT_SIGNAL 0xc0010003
|
|
|
|
typedef struct _fpreg /* Note 1 */
|
|
{
|
|
ULONG losig;
|
|
ULONG hisig;
|
|
USHORT signexp;
|
|
} FPREG;
|
|
typedef FPREG *PFPREG;
|
|
|
|
typedef struct _CONTEXT /* Note 1 */
|
|
{
|
|
ULONG ContextFlags;
|
|
ULONG ctx_env[7];
|
|
FPREG ctx_stack[8];
|
|
ULONG ctx_SegGs;
|
|
ULONG ctx_SegFs;
|
|
ULONG ctx_SegEs;
|
|
ULONG ctx_SegDs;
|
|
ULONG ctx_RegEdi;
|
|
ULONG ctx_RegEsi;
|
|
ULONG ctx_RegEax;
|
|
ULONG ctx_RegEbx;
|
|
ULONG ctx_RegEcx;
|
|
ULONG ctx_RegEdx;
|
|
ULONG ctx_RegEbp;
|
|
ULONG ctx_RegEip;
|
|
ULONG ctx_SegCs;
|
|
ULONG ctx_EFlags;
|
|
ULONG ctx_RegEsp;
|
|
ULONG ctx_SegSs;
|
|
} CONTEXTRECORD;
|
|
typedef CONTEXTRECORD *PCONTEXTRECORD;
|
|
|
|
#define EXCEPTION_MAXIMUM_PARAMETERS 4
|
|
|
|
typedef struct _EXCEPTIONREPORTRECORD
|
|
{
|
|
ULONG ExceptionNum;
|
|
ULONG fHandlerFlags;
|
|
struct _EXCEPTIONREPORTRECORD * NestedExceptionReportRecord;
|
|
PVOID ExceptionAddress;
|
|
ULONG cParameters;
|
|
ULONG ExceptionInfo[EXCEPTION_MAXIMUM_PARAMETERS];
|
|
} EXCEPTIONREPORTRECORD;
|
|
typedef EXCEPTIONREPORTRECORD *PEXCEPTIONREPORTRECORD;
|
|
|
|
struct _EXCEPTIONREGISTRATIONRECORD;
|
|
|
|
typedef ULONG _ERR (PEXCEPTIONREPORTRECORD pReport,
|
|
struct _EXCEPTIONREGISTRATIONRECORD *pRegistration,
|
|
PCONTEXTRECORD pContext, PVOID pWhatever);
|
|
typedef _ERR *ERR;
|
|
|
|
typedef struct _EXCEPTIONREGISTRATIONRECORD
|
|
{
|
|
struct _EXCEPTIONREGISTRATIONRECORD * __volatile__ prev_structure;
|
|
ERR __volatile__ ExceptionHandler;
|
|
} EXCEPTIONREGISTRATIONRECORD;
|
|
typedef EXCEPTIONREGISTRATIONRECORD *PEXCEPTIONREGISTRATIONRECORD;
|
|
|
|
#define END_OF_CHAIN ((PEXCEPTIONREGISTRATIONRECORD)(-1))
|
|
|
|
ULONG DosAcknowledgeSignalException (ULONG ulSignal);
|
|
ULONG DosEnterMustComplete (PULONG pulNesting);
|
|
ULONG DosExitMustComplete (PULONG pulNesting);
|
|
ULONG DosQueryThreadContext (TID tid, ULONG ulLevel, PCONTEXTRECORD pContext);
|
|
ULONG DosRaiseException (PEXCEPTIONREPORTRECORD pXRepRec);
|
|
ULONG DosSendSignalException (PID pid, ULONG ulSignal);
|
|
ULONG DosSetExceptionHandler (PEXCEPTIONREGISTRATIONRECORD pXRegRec);
|
|
ULONG DosSetSignalExceptionFocus (BOOL32 flag, PULONG pulTimes);
|
|
ULONG DosUnsetExceptionHandler (PEXCEPTIONREGISTRATIONRECORD pXRegRec);
|
|
ULONG DosUnwindException (PEXCEPTIONREGISTRATIONRECORD pXRegRec,
|
|
PVOID pJumpThere, PEXCEPTIONREPORTRECORD pXRepRec);
|
|
|
|
#endif /* INCL_DOSEXCEPTIONS */
|
|
|
|
/* --------------------------- INFORMATION -------------------------------- */
|
|
|
|
#if defined (INCL_DOSMISC)
|
|
|
|
#define QSV_MAX_PATH_LENGTH 1
|
|
#define QSV_MAX_TEXT_SESSIONS 2
|
|
#define QSV_MAX_PM_SESSIONS 3
|
|
#define QSV_MAX_VDM_SESSIONS 4
|
|
#define QSV_BOOT_DRIVE 5
|
|
#define QSV_DYN_PRI_VARIATION 6
|
|
#define QSV_MAX_WAIT 7
|
|
#define QSV_MIN_SLICE 8
|
|
#define QSV_MAX_SLICE 9
|
|
#define QSV_PAGE_SIZE 10
|
|
#define QSV_VERSION_MAJOR 11
|
|
#define QSV_VERSION_MINOR 12
|
|
#define QSV_VERSION_REVISION 13
|
|
#define QSV_MS_COUNT 14
|
|
#define QSV_TIME_LOW 15
|
|
#define QSV_TIME_HIGH 16
|
|
#define QSV_TOTPHYSMEM 17
|
|
#define QSV_TOTRESMEM 18
|
|
#define QSV_TOTAVAILMEM 19
|
|
#define QSV_MAXPRMEM 20
|
|
#define QSV_MAXSHMEM 21
|
|
#define QSV_TIMER_INTERVAL 22
|
|
#define QSV_MAX_COMP_LENGTH 23
|
|
#define QSV_FOREGROUND_FS_SESSION 24
|
|
#define QSV_FOREGROUND_PROCESS 25
|
|
#define QSV_MAX QSV_FOREGROUND_PROCESS
|
|
|
|
#define SIS_MMIOADDR 0
|
|
#define SIS_MEC_TABLE 1
|
|
#define SIS_SYS_LOG 2
|
|
|
|
ULONG DosQuerySysInfo (ULONG ulStart, ULONG ulLast, PVOID pBuf,
|
|
ULONG ulBufLength);
|
|
ULONG DosScanEnv (PCSZ pszName, PSZ *pszValue);
|
|
ULONG DosQueryRASInfo (ULONG Index, PPVOID Addr);
|
|
|
|
#endif /* INCL_DOSMISC */
|
|
|
|
/* ---------------------------- TIMERS ------------------------------------ */
|
|
|
|
#if defined (INCL_DOSDATETIME) || !defined (INCL_NOCOMMON)
|
|
|
|
typedef struct _DATETIME
|
|
{
|
|
UCHAR hours;
|
|
UCHAR minutes;
|
|
UCHAR seconds;
|
|
UCHAR hundredths;
|
|
UCHAR day;
|
|
UCHAR month;
|
|
USHORT year;
|
|
SHORT timezone;
|
|
UCHAR weekday;
|
|
} DATETIME;
|
|
typedef DATETIME *PDATETIME;
|
|
|
|
ULONG DosGetDateTime (PDATETIME pdt);
|
|
ULONG DosSetDateTime (__const__ DATETIME *pdt);
|
|
|
|
#endif /* INCL_DOSDATETIME || !INCL_NOCOMMON */
|
|
|
|
|
|
#if defined (INCL_DOSDATETIME)
|
|
|
|
typedef LHANDLE HTIMER;
|
|
typedef HTIMER *PHTIMER;
|
|
|
|
ULONG DosAsyncTimer (ULONG ulMilliSec, HSEM hsem, PHTIMER phtimer);
|
|
ULONG DosStartTimer (ULONG ulMilliSec, HSEM hsem, PHTIMER phtimer);
|
|
ULONG DosStopTimer (HTIMER htimer);
|
|
|
|
#endif /* INCL_DOSDATETIME */
|
|
|
|
#if defined (INCL_DOSPROFILE)
|
|
|
|
typedef struct _QWORD
|
|
{
|
|
ULONG ulLo;
|
|
ULONG ulHi;
|
|
} QWORD;
|
|
typedef QWORD *PQWORD;
|
|
|
|
ULONG DosTmrQueryFreq (PULONG pulTmrFreq);
|
|
ULONG DosTmrQueryTime (PQWORD pqwTmrTime);
|
|
|
|
#endif /* INCL_DOSPROFILE */
|
|
|
|
/* ---------------------- VIRTUAL DOS MACHINES----------------------------- */
|
|
|
|
typedef USHORT SGID;
|
|
|
|
#if defined (INCL_DOSMVDM)
|
|
|
|
typedef LHANDLE HVDD;
|
|
typedef HVDD *PHVDD;
|
|
|
|
ULONG DosCloseVDD (HVDD hvdd);
|
|
ULONG DosOpenVDD (PCSZ pszVDD, PHVDD phvdd);
|
|
ULONG DosQueryDOSProperty (SGID sgidSesssionID, PCSZ pszName,
|
|
ULONG ulBufferLength, PSZ pBuffer);
|
|
ULONG DosRequestVDD (HVDD hvdd, SGID sgidSessionID, ULONG ulCommand,
|
|
ULONG ulInputBufferLength, PVOID pInputBuffer,
|
|
ULONG ulOutputBufferLength, PVOID pOutputBuffer);
|
|
ULONG DosSetDOSProperty (SGID sgidSessionID, PCSZ pszName,
|
|
ULONG ulBufferLength, PCSZ pBuffer);
|
|
|
|
#endif /* INCL_DOSMVDM */
|
|
|
|
/* --------------------------- DEBUGGING ---------------------------------- */
|
|
|
|
#if defined (INCL_DOSPROCESS)
|
|
|
|
#define DBG_C_Null 0
|
|
#define DBG_C_ReadMem 1
|
|
#define DBG_C_ReadMem_I 1
|
|
#define DBG_C_ReadMem_D 2
|
|
#define DBG_C_ReadReg 3
|
|
#define DBG_C_WriteMem 4
|
|
#define DBG_C_WriteMem_I 4
|
|
#define DBG_C_WriteMem_D 5
|
|
#define DBG_C_WriteReg 6
|
|
#define DBG_C_Go 7
|
|
#define DBG_C_Term 8
|
|
#define DBG_C_SStep 9
|
|
#define DBG_C_Stop 10
|
|
#define DBG_C_Freeze 11
|
|
#define DBG_C_Resume 12
|
|
#define DBG_C_NumToAddr 13
|
|
#define DBG_C_ReadCoRegs 14
|
|
#define DBG_C_WriteCoRegs 15
|
|
#define DBG_C_ThrdStat 17
|
|
#define DBG_C_MapROAlias 18
|
|
#define DBG_C_MapRWAlias 19
|
|
#define DBG_C_UnMapAlias 20
|
|
#define DBG_C_Connect 21
|
|
#define DBG_C_ReadMemBuf 22
|
|
#define DBG_C_WriteMemBuf 23
|
|
#define DBG_C_SetWatch 24
|
|
#define DBG_C_ClearWatch 25
|
|
#define DBG_C_RangeStep 26
|
|
#define DBG_C_Continue 27
|
|
#define DBG_C_AddrToObject 28
|
|
#define DBG_C_XchngOpcode 29
|
|
#define DBG_C_LinToSel 30
|
|
#define DBG_C_SelToLin 31
|
|
|
|
#define DBG_N_Success 0
|
|
#define DBG_N_Error (-1)
|
|
#define DBG_N_ProcTerm (-6)
|
|
#define DBG_N_Exception (-7)
|
|
#define DBG_N_ModuleLoad (-8)
|
|
#define DBG_N_CoError (-9)
|
|
#define DBG_N_ThreadTerm (-10)
|
|
#define DBG_N_AsyncStop (-11)
|
|
#define DBG_N_NewProc (-12)
|
|
#define DBG_N_AliasFree (-13)
|
|
#define DBG_N_Watchpoint (-14)
|
|
#define DBG_N_ThreadCreate (-15)
|
|
#define DBG_N_ModuleFree (-16)
|
|
#define DBG_N_RangeStep (-17)
|
|
|
|
#define DBG_D_Thawed 0
|
|
#define DBG_D_Frozen 1
|
|
|
|
#define DBG_T_Runnable 0
|
|
#define DBG_T_Suspended 1
|
|
#define DBG_T_Blocked 2
|
|
#define DBG_T_CritSec 3
|
|
|
|
#define DBG_L_386 1
|
|
|
|
#define DBG_LEN_387 108
|
|
|
|
#define DBG_CO_387 1
|
|
|
|
#define DBG_O_OBJMTE 0x10000000
|
|
|
|
#define DBG_W_Global 0x00000001
|
|
#define DBG_W_Local 0x00000002
|
|
#define DBG_W_Execute 0x00010000
|
|
#define DBG_W_Write 0x00020000
|
|
#define DBG_W_ReadWrite 0x00030000
|
|
|
|
#define DBG_X_PRE_FIRST_CHANCE 0x00000000
|
|
#define DBG_X_FIRST_CHANCE 0x00000001
|
|
#define DBG_X_LAST_CHANCE 0x00000002
|
|
#define DBG_X_STACK_INVALID 0x00000003
|
|
|
|
typedef struct _TStat
|
|
{
|
|
UCHAR DbgState;
|
|
UCHAR TState;
|
|
USHORT TPriority;
|
|
} TStat_t;
|
|
|
|
typedef struct _uDB
|
|
{
|
|
ULONG Pid;
|
|
ULONG Tid;
|
|
LONG Cmd;
|
|
LONG Value;
|
|
ULONG Addr;
|
|
ULONG Buffer;
|
|
ULONG Len;
|
|
ULONG Index;
|
|
ULONG MTE;
|
|
ULONG EAX;
|
|
ULONG ECX;
|
|
ULONG EDX;
|
|
ULONG EBX;
|
|
ULONG ESP;
|
|
ULONG EBP;
|
|
ULONG ESI;
|
|
ULONG EDI;
|
|
ULONG EFlags;
|
|
ULONG EIP;
|
|
ULONG CSLim;
|
|
ULONG CSBase;
|
|
UCHAR CSAcc;
|
|
UCHAR CSAtr;
|
|
USHORT CS;
|
|
ULONG DSLim;
|
|
ULONG DSBase;
|
|
UCHAR DSAcc;
|
|
UCHAR DSAtr;
|
|
USHORT DS;
|
|
ULONG ESLim;
|
|
ULONG ESBase;
|
|
UCHAR ESAcc;
|
|
UCHAR ESAtr;
|
|
USHORT ES;
|
|
ULONG FSLim;
|
|
ULONG FSBase;
|
|
UCHAR FSAcc;
|
|
UCHAR FSAtr;
|
|
USHORT FS;
|
|
ULONG GSLim;
|
|
ULONG GSBase;
|
|
UCHAR GSAcc;
|
|
UCHAR GSAtr;
|
|
USHORT GS;
|
|
ULONG SSLim;
|
|
ULONG SSBase;
|
|
UCHAR SSAcc;
|
|
UCHAR SSAtr;
|
|
USHORT SS;
|
|
} uDB_t;
|
|
|
|
ULONG DosDebug (uDB_t *pDebugBuffer);
|
|
|
|
#endif /* INCL_DOSPROCESS */
|
|
|
|
/* ---------------------------- MESSAGES ---------------------------------- */
|
|
|
|
#if defined (INCL_DOSMISC)
|
|
|
|
ULONG DosGetMessage (PCHAR *pTable, ULONG ulTableEntries,
|
|
PCHAR pBuffer, ULONG ulBufferLengthMax, ULONG ulMsgnNumber,
|
|
PCSZ pszFile, PULONG pulBufferLength);
|
|
ULONG DosInsertMessage (PCHAR *pTable, ULONG ulCount, PCSZ pszMsg,
|
|
ULONG ulMsgLength, PCHAR pBuffer, ULONG ulBufferLengthMax,
|
|
PULONG pulBufferLength);
|
|
ULONG DosPutMessage (HFILE hfile, ULONG ulMessageLength, PCHAR pMessage);
|
|
ULONG DosQueryMessageCP (PCHAR pBuffer, ULONG ulBufferLengthMax,
|
|
PCSZ pszFilename, PULONG pulBufferLength);
|
|
|
|
#endif /* INCL_DOSMISC */
|
|
|
|
/* ----------------------------- RAS -------------------------------------- */
|
|
|
|
#if defined (INCL_DOSRAS)
|
|
|
|
#define DDP_DISABLEPROCDUMP 0
|
|
#define DDP_ENABLEPROCDUMP 1
|
|
#define DDP_PERFORMPROCDUMP 2
|
|
|
|
#define LF_LOGENABLE 0x0001
|
|
#define LF_LOGAVAILABLE 0x0002
|
|
|
|
#define SIS_MMIOADDR 0
|
|
#define SIS_MEC_TABLE 1
|
|
#define SIS_SYS_LOG 2
|
|
|
|
#define SPU_DISABLESUPPRESSION 0
|
|
#define SPU_ENABLESUPPRESSION 1
|
|
|
|
ULONG DosDumpProcess (ULONG ulFlag, ULONG ulDrive, PID pid);
|
|
ULONG DosForceSystemDump (ULONG ulReserved);
|
|
ULONG DosQueryRASInfo (ULONG ulIndex, PPVOID addr);
|
|
ULONG DosSuppressPopUps (ULONG ulFlag, ULONG ulDrive);
|
|
|
|
#endif /* INCL_DOSRAS */
|
|
|
|
/* ---------------------------- REXX -------------------------------------- */
|
|
|
|
#define RXAUTOBUFLEN 256
|
|
|
|
typedef struct _RXSTRING
|
|
{
|
|
ULONG strlength;
|
|
PCH strptr;
|
|
} RXSTRING;
|
|
typedef RXSTRING *PRXSTRING;
|
|
|
|
typedef struct _RXSYSEXIT
|
|
{
|
|
PSZ sysexit_name;
|
|
LONG sysexit_code;
|
|
} RXSYSEXIT;
|
|
typedef RXSYSEXIT *PRXSYSEXIT;
|
|
|
|
#define RXNULLSTRING(r) ((r).strptr == (PCH)0)
|
|
#define RXZEROLENSTRING(r) ((r).strptr != (PCH)0 && (r).strlength == 0)
|
|
#define RXVALIDSTRING(r) ((r).strptr != (PCH)0 && (r).strlength != 0)
|
|
#define RXSTRLEN(r) (RXNULLSTRING(r) ? 0 : (r).strlength)
|
|
#define RXSTRPTR(r) (r).strptr
|
|
#define MAKERXSTRING(r,p,l) \
|
|
((r).strptr = (PCH)p, (r).strlength = (ULONG)l)
|
|
|
|
#define RXCOMMAND 0
|
|
#define RXSUBROUTINE 1
|
|
#define RXFUNCTION 2
|
|
|
|
#if defined (INCL_RXSUBCOM)
|
|
|
|
#define RXSUBCOM_DROPPABLE 0x0000
|
|
#define RXSUBCOM_NONDROP 0x0001
|
|
|
|
#define RXSUBCOM_ISREG 0x0001
|
|
#define RXSUBCOM_ERROR 0x0001
|
|
#define RXSUBCOM_FAILURE 0x0002
|
|
|
|
#define RXSUBCOM_BADENTRY 1001
|
|
#define RXSUBCOM_NOEMEM 1002
|
|
#define RXSUBCOM_BADTYPE 1003
|
|
#define RXSUBCOM_NOTINIT 1004
|
|
|
|
#define RXSUBCOM_OK 0
|
|
#define RXSUBCOM_DUP 10
|
|
#define RXSUBCOM_MAXREG 20
|
|
#define RXSUBCOM_NOTREG 30
|
|
#define RXSUBCOM_NOCANDROP 40
|
|
#define RXSUBCOM_LOADERR 50
|
|
#define RXSUBCOM_NOPROC 127
|
|
|
|
typedef ULONG RexxSubcomHandler (PRXSTRING prxCommand, PUSHORT pusFlags,
|
|
PRXSTRING prxResult);
|
|
|
|
ULONG RexxDeregisterSubcom (PCSZ pszEnvName, PCSZ pszModuleName);
|
|
ULONG RexxQuerySubcom (PCSZ pszEnvName, PCSZ pszModuleName, PUSHORT pusFlags,
|
|
PUCHAR pUserWord);
|
|
ULONG RexxRegisterSubcomDll (PCSZ pszEnvName, PCSZ pszModuleName,
|
|
PCSZ pszEntryPoint, PUCHAR pUserArea, ULONG ulDropAuth);
|
|
ULONG RexxRegisterSubcomExe (PCSZ pszEnvName, PFN pfnEntryPoint,
|
|
PUCHAR pUserArea);
|
|
|
|
#define REXXDEREGISTERSUBCOM RexxDeregisterSubcom
|
|
#define REXXREGISTERSUBCOMDLL RexxRegisterSubcomDll
|
|
#define REXXREGISTERSUBCOMEXE RexxRegisterSubcomExe
|
|
#define REXXQUERYSUBCOM RexxQuerySubcom
|
|
|
|
#endif /* INCL_RXSUBCOM */
|
|
|
|
#if defined (INCL_RXSHV)
|
|
|
|
#define RXSHV_SET 0x0000
|
|
#define RXSHV_FETCH 0x0001
|
|
#define RXSHV_DROPV 0x0002
|
|
#define RXSHV_SYSET 0x0003
|
|
#define RXSHV_SYFET 0x0004
|
|
#define RXSHV_SYDRO 0x0005
|
|
#define RXSHV_NEXTV 0x0006
|
|
#define RXSHV_PRIV 0x0007
|
|
#define RXSHV_EXIT 0x0008
|
|
|
|
#define RXSHV_NOAVL 144
|
|
|
|
#define RXSHV_OK 0x0000
|
|
#define RXSHV_NEWV 0x0001
|
|
#define RXSHV_LVAR 0x0002
|
|
#define RXSHV_TRUNC 0x0004
|
|
#define RXSHV_BADN 0x0008
|
|
#define RXSHV_MEMFL 0x0010
|
|
#define RXSHV_BADF 0x0080
|
|
|
|
typedef struct _SHVBLOCK
|
|
{
|
|
struct _SHVBLOCK *shvnext;
|
|
RXSTRING shvname;
|
|
RXSTRING shvvalue;
|
|
ULONG shvnamelen;
|
|
ULONG shvvaluelen;
|
|
UCHAR shvcode;
|
|
UCHAR shvret;
|
|
} SHVBLOCK;
|
|
typedef SHVBLOCK *PSHVBLOCK;
|
|
|
|
ULONG RexxVariablePool (PSHVBLOCK pRequest);
|
|
|
|
#define REXXVARIABLEPOOL RexxVariablePool
|
|
|
|
#endif /* INCL_RXSHV */
|
|
|
|
#if defined (INCL_RXFUNC)
|
|
|
|
#define RXFUNC_DYNALINK 1
|
|
#define RXFUNC_CALLENTRY 2
|
|
|
|
#define RXFUNC_OK 0
|
|
#define RXFUNC_DEFINED 10
|
|
#define RXFUNC_NOMEM 20
|
|
#define RXFUNC_NOTREG 30
|
|
#define RXFUNC_MODNOTFND 40
|
|
#define RXFUNC_ENTNOTFND 50
|
|
#define RXFUNC_NOTINIT 60
|
|
#define RXFUNC_BADTYPE 70
|
|
|
|
typedef ULONG RexxFunctionHandler (PCSZ pszName, ULONG ulArgCount,
|
|
PRXSTRING prxArgList, PCSZ pszQueueName, PRXSTRING prxResult);
|
|
|
|
ULONG RexxDeregisterFunction (PCSZ pszFuncName);
|
|
ULONG RexxQueryFunction (PCSZ pszFuncName);
|
|
ULONG RexxRegisterFunctionDll (PCSZ pszFuncName, PCSZ pszModuleName,
|
|
PCSZ pszEntryPoint);
|
|
ULONG RexxRegisterFunctionExe (PCSZ pszFuncName,
|
|
RexxFunctionHandler *pfnEntryPoint);
|
|
|
|
#define REXXDEREGISTERFUNCTION RexxDeregisterFunction
|
|
#define REXXQUERYFUNCTION RexxQueryFunction
|
|
#define REXXREGISTERFUNCTIONDLL RexxRegisterFunctionDll
|
|
#define REXXREGISTERFUNCTIONEXE RexxRegisterFunctionExe
|
|
|
|
#endif /* INCL_RXFUNC */
|
|
|
|
#if defined (INCL_RXSYSEXIT)
|
|
|
|
#define RXEXIT_DROPPABLE 0x0000
|
|
#define RXEXIT_NONDROP 0x0001
|
|
|
|
#define RXEXIT_HANDLED 0
|
|
#define RXEXIT_NOT_HANDLED 1
|
|
#define RXEXIT_RAISE_ERROR (-1)
|
|
|
|
#define RXEXIT_ISREG 0x0001
|
|
#define RXEXIT_ERROR 0x0001
|
|
#define RXEXIT_FAILURE 0x0002
|
|
|
|
#define RXEXIT_BADENTRY 1001
|
|
#define RXEXIT_NOEMEM 1002
|
|
#define RXEXIT_BADTYPE 1003
|
|
#define RXEXIT_NOTINIT 1004
|
|
|
|
#define RXEXIT_OK 0
|
|
#define RXEXIT_DUP 10
|
|
#define RXEXIT_MAXREG 20
|
|
#define RXEXIT_NOTREG 30
|
|
#define RXEXIT_NOCANDROP 40
|
|
#define RXEXIT_LOADERR 50
|
|
#define RXEXIT_NOPROC 127
|
|
|
|
#define RXENDLST 0
|
|
|
|
#define RXFNC 2
|
|
#define RXFNCCAL 1
|
|
|
|
#define RXCMD 3
|
|
#define RXCMDHST 1
|
|
|
|
#define RXMSQ 4
|
|
#define RXMSQPLL 1
|
|
#define RXMSQPSH 2
|
|
#define RXMSQSIZ 3
|
|
#define RXMSQNAM 20
|
|
|
|
#define RXSIO 5
|
|
#define RXSIOSAY 1
|
|
#define RXSIOTRC 2
|
|
#define RXSIOTRD 3
|
|
#define RXSIODTR 4
|
|
#define RXSIOTLL 5
|
|
|
|
#define RXHLT 7
|
|
#define RXHLTCLR 1
|
|
#define RXHLTTST 2
|
|
|
|
#define RXTRC 8
|
|
#define RXTRCTST 1
|
|
|
|
#define RXINI 9
|
|
#define RXINIEXT 1
|
|
|
|
#define RXTER 10
|
|
#define RXTEREXT 1
|
|
|
|
#define RXNOOFEXITS 11
|
|
|
|
typedef PUCHAR PEXIT;
|
|
|
|
typedef struct _RXFNC_FLAGS
|
|
{
|
|
ULONG rxfferr : 1;
|
|
ULONG rxffnfnd : 1;
|
|
ULONG rxffsub : 1;
|
|
} RXFNC_FLAGS;
|
|
|
|
typedef struct _RXFNCCAL_PARM
|
|
{
|
|
RXFNC_FLAGS rxfnc_flags;
|
|
PUCHAR rxfnc_name;
|
|
USHORT rxfnc_namel;
|
|
PUCHAR rxfnc_que;
|
|
USHORT rxfnc_quel;
|
|
USHORT rxfnc_argc;
|
|
PRXSTRING rxfnc_argv;
|
|
RXSTRING rxfnc_retc;
|
|
} RXFNCCAL_PARM;
|
|
|
|
typedef struct _RXCMD_FLAGS
|
|
{
|
|
ULONG rxfcfail : 1;
|
|
ULONG rxfcerr : 1;
|
|
} RXCMD_FLAGS;
|
|
|
|
typedef struct _RXCMDHST_PARM
|
|
{
|
|
RXCMD_FLAGS rxcmd_flags;
|
|
PUCHAR rxcmd_address;
|
|
USHORT rxcmd_addressl;
|
|
PUCHAR rxcmd_dll;
|
|
USHORT rxcmd_dll_len;
|
|
RXSTRING rxcmd_command;
|
|
RXSTRING rxcmd_retc;
|
|
} RXCMDHST_PARM;
|
|
|
|
typedef struct _RXMSQPLL_PARM
|
|
{
|
|
RXSTRING rxmsq_retc;
|
|
} RXMSQPLL_PARM;
|
|
|
|
typedef struct _RXMSQ_FLAGS
|
|
{
|
|
ULONG rxfmlifo : 1;
|
|
} RXMSQ_FLAGS;
|
|
|
|
typedef struct _RXMSQPSH_PARM
|
|
{
|
|
RXMSQ_FLAGS rxmsq_flags;
|
|
RXSTRING rxmsq_value;
|
|
} RXMSQPSH_PARM;
|
|
|
|
typedef struct _RXMSQSIZ_PARM
|
|
{
|
|
ULONG rxmsq_size;
|
|
} RXMSQSIZ_PARM;
|
|
|
|
typedef struct _RXMSQNAM_PARM
|
|
{
|
|
RXSTRING rxmsq_name;
|
|
} RXMSQNAM_PARM;
|
|
|
|
typedef struct _RXSIOSAY_PARM
|
|
{
|
|
RXSTRING rxsio_string;
|
|
} RXSIOSAY_PARM;
|
|
|
|
typedef struct _RXSIOTRC_PARM
|
|
{
|
|
RXSTRING rxsio_string;
|
|
} RXSIOTRC_PARM;
|
|
|
|
typedef struct _RXSIOTRD_PARM
|
|
{
|
|
RXSTRING rxsiotrd_retc;
|
|
} RXSIOTRD_PARM;
|
|
|
|
typedef struct _RXSIODR_PARM
|
|
{
|
|
RXSTRING rxsiodtr_retc;
|
|
} RXSIODTR_PARM;
|
|
|
|
typedef struct _RXHLT_FLAGS
|
|
{
|
|
ULONG rxfhhalt : 1;
|
|
} RXHLT_FLAGS;
|
|
|
|
typedef struct _RXHLTTST_PARM
|
|
{
|
|
RXHLT_FLAGS rxhlt_flags;
|
|
} RXHLTTST_PARM;
|
|
|
|
typedef struct _RXTRC_FLAGS
|
|
{
|
|
ULONG rxftrace : 1;
|
|
} RXTRC_FLAGS;
|
|
|
|
typedef struct _RXTRCTST_PARM
|
|
{
|
|
RXTRC_FLAGS rxtrc_flags;
|
|
} RXTRCTST_PARM;
|
|
|
|
typedef LONG RexxExitHandler (LONG lExitNumber, LONG lSubfunction,
|
|
PEXIT pParmBlock);
|
|
|
|
ULONG RexxDeregisterExit (PCSZ pszEnvName, PCSZ pszModuleName);
|
|
ULONG RexxQueryExit (PCSZ pszEnvName, PCSZ pszModuleName, PUSHORT pusFlag,
|
|
PUCHAR pUserWord);
|
|
ULONG RexxRegisterExitDll (PCSZ pszEnvName, PCSZ pszModuleName,
|
|
PCSZ pszEntryName, PUCHAR pUserArea, ULONG ulDropAuth);
|
|
ULONG RexxRegisterExitExe (PCSZ pszEnvName, PFN pfnEntryPoint,
|
|
PUCHAR pUserArea);
|
|
|
|
#define REXXDEREGISTEREXIT RexxDeregisterExit
|
|
#define REXXQUERYEXIT RexxQueryExit
|
|
#define REXXREGISTEREXITDLL RexxRegisterExitDll
|
|
#define REXXREGISTEREXITEXE RexxRegisterExitExe
|
|
|
|
#endif /* INCL_RXSYSEXIT */
|
|
|
|
#if defined (INCL_RXARI)
|
|
|
|
#define RXARI_OK 0
|
|
#define RXARI_NOT_FOUND 1
|
|
#define RXARI_PROCESSING_ERROR 2
|
|
|
|
ULONG RexxResetTrace (PID pid, TID tid);
|
|
ULONG RexxSetHalt (PID pid, TID tid);
|
|
ULONG RexxSetTrace (PID pid, TID tid);
|
|
|
|
#define REXXRESETTRACE RexxResetTrace
|
|
#define REXXSETHALT RexxSetHalt
|
|
#define REXXSETTRACE RexxSetTrace
|
|
|
|
#endif /* INCL_RXARI */
|
|
|
|
#if defined (INCL_RXMACRO)
|
|
|
|
#define RXMACRO_SEARCH_BEFORE 1
|
|
#define RXMACRO_SEARCH_AFTER 2
|
|
|
|
#define RXMACRO_OK 0
|
|
#define RXMACRO_NO_STORAGE 1
|
|
#define RXMACRO_NOT_FOUND 2
|
|
#define RXMACRO_EXTENSION_REQUIRED 3
|
|
#define RXMACRO_ALREADY_EXISTS 4
|
|
#define RXMACRO_FILE_ERROR 5
|
|
#define RXMACRO_SIGNATURE_ERROR 6
|
|
#define RXMACRO_SOURCE_NOT_FOUND 7
|
|
#define RXMACRO_INVALID_POSITION 8
|
|
#define RXMACRO_NOT_INIT 9
|
|
|
|
ULONG RexxAddMacro (PCSZ pszFuncName, PCSZ pszSourceFile, ULONG ulPosition);
|
|
ULONG RexxClearMacroSpace (VOID);
|
|
ULONG RexxDropMacro (PCSZ pszFuncName);
|
|
ULONG RexxLoadMacroSpace (ULONG ulFuncCout, PCSZ *apszFuncNames,
|
|
PCSZ pszMacroLibFile);
|
|
ULONG RexxQueryMacro (PCSZ pszFuncName, PUSHORT pusPosition);
|
|
ULONG RexxReorderMacro(PCSZ pszFuncName, ULONG ulPosition);
|
|
ULONG RexxSaveMacroSpace (ULONG ulFuncCount, PCSZ *apszFuncNames,
|
|
PCSZ pszMacroLibFile);
|
|
|
|
#define REXXADDMACRO RexxAddMacro
|
|
#define REXXCLEARMACROSPACE RexxClearMacroSpace
|
|
#define REXXDROPMACRO RexxDropMacro
|
|
#define REXXSAVEMACROSPACE RexxSaveMacroSpace
|
|
#define REXXLOADMACROSPACE RexxLoadMacroSpace
|
|
#define REXXQUERYMACRO RexxQueryMacro
|
|
#define REXXREORDERMACRO RexxReorderMacro
|
|
|
|
#endif /* INCL_RXMACRO */
|
|
|
|
LONG RexxStart (LONG lArgCount, PRXSTRING prxArgList, PCSZ pszProgramName,
|
|
PRXSTRING prxInstore, PCSZ pszEnvName, LONG lCallType, PRXSYSEXIT pExits,
|
|
PSHORT psReturnCode, PRXSTRING prxResult);
|
|
|
|
#define REXXSTART RexxStart
|
|
|
|
/* ----------------------- PRESENTATION MANAGER --------------------------- */
|
|
|
|
#define CTLS_WM_BIDI_FIRST 0x390
|
|
#define CTLS_WM_BIDI_LAST 0x39f
|
|
|
|
#if defined (INCL_NLS)
|
|
#define WM_DBCSFIRST 0x00b0
|
|
#define WM_DBCSLAST 0x00cf
|
|
#endif /* INCL_NLS */
|
|
|
|
#define WC_FRAME ((PSZ)0xffff0001)
|
|
#define WC_COMBOBOX ((PSZ)0xffff0002)
|
|
#define WC_BUTTON ((PSZ)0xffff0003)
|
|
#define WC_MENU ((PSZ)0xffff0004)
|
|
#define WC_STATIC ((PSZ)0xffff0005)
|
|
#define WC_ENTRYFIELD ((PSZ)0xffff0006)
|
|
#define WC_LISTBOX ((PSZ)0xffff0007)
|
|
#define WC_SCROLLBAR ((PSZ)0xffff0008)
|
|
#define WC_TITLEBAR ((PSZ)0xffff0009)
|
|
#define WC_MLE ((PSZ)0xffff000a)
|
|
#define WC_APPSTAT ((PSZ)0xffff0010)
|
|
#define WC_KBDSTAT ((PSZ)0xffff0011)
|
|
#define WC_PECIC ((PSZ)0xffff0012)
|
|
#define WC_DBE_KKPOPUP ((PSZ)0xffff0013)
|
|
#define WC_SPINBUTTON ((PSZ)0xffff0020)
|
|
#define WC_CONTAINER ((PSZ)0xffff0025)
|
|
#define WC_SLIDER ((PSZ)0xffff0026)
|
|
#define WC_VALUESET ((PSZ)0xffff0027)
|
|
#define WC_NOTEBOOK ((PSZ)0xffff0028)
|
|
#define WC_PENFIRST ((PSZ)0xffff0029)
|
|
#define WC_PENLAST ((PSZ)0xffff002c)
|
|
#define WC_MMPMFIRST ((PSZ)0xffff0040)
|
|
#define WC_CIRCULARSLIDER ((PSZ)0xffff0041)
|
|
#define WC_MMPMLAST ((PSZ)0xffff004f)
|
|
|
|
#define WS_VISIBLE 0x80000000
|
|
#define WS_DISABLED 0x40000000
|
|
#define WS_CLIPCHILDREN 0x20000000
|
|
#define WS_CLIPSIBLINGS 0x10000000
|
|
#define WS_PARENTCLIP 0x08000000
|
|
#define WS_SAVEBITS 0x04000000
|
|
#define WS_SYNCPAINT 0x02000000
|
|
#define WS_MINIMIZED 0x01000000
|
|
#define WS_MAXIMIZED 0x00800000
|
|
#define WS_ANIMATE 0x00400000
|
|
#define WS_GROUP 0x00010000
|
|
#define WS_TABSTOP 0x00020000
|
|
#define WS_MULTISELECT 0x00040000
|
|
|
|
#define CS_MOVENOTIFY 0x00000001
|
|
#define CS_SIZEREDRAW 0x00000004
|
|
#define CS_HITTEST 0x00000008
|
|
#define CS_PUBLIC 0x00000010
|
|
#define CS_FRAME 0x00000020
|
|
#define CS_CLIPCHILDREN 0x20000000
|
|
#define CS_CLIPSIBLINGS 0x10000000
|
|
#define CS_PARENTCLIP 0x08000000
|
|
#define CS_SAVEBITS 0x04000000
|
|
#define CS_SYNCPAINT 0x02000000
|
|
|
|
#define MID_NONE (-1)
|
|
#define MID_ERROR (-1)
|
|
|
|
#define DB_PATCOPY 0x0000
|
|
#define DB_PATINVERT 0x0001
|
|
#define DB_DESTINVERT 0x0002
|
|
#define DB_AREAMIXMODE 0x0003
|
|
|
|
#define DB_ROP 0x0007
|
|
#define DB_INTERIOR 0x0008
|
|
#define DB_AREAATTRS 0x0010
|
|
#define DB_STANDARD 0x0100
|
|
#define DB_DLGBORDER 0x0200
|
|
|
|
#define DBM_NORMAL 0x0000
|
|
#define DBM_INVERT 0x0001
|
|
#define DBM_HALFTONE 0x0002
|
|
#define DBM_STRETCH 0x0004
|
|
#define DBM_IMAGEATTRS 0x0008
|
|
|
|
#define DT_LEFT 0x00000000
|
|
#define DT_QUERYEXTENT 0x00000002
|
|
#define DT_UNDERSCORE 0x00000010
|
|
#define DT_STRIKEOUT 0x00000020
|
|
#define DT_TEXTATTRS 0x00000040
|
|
#define DT_EXTERNALLEADING 0x00000080
|
|
#define DT_CENTER 0x00000100
|
|
#define DT_RIGHT 0x00000200
|
|
#define DT_TOP 0x00000000
|
|
#define DT_VCENTER 0x00000400
|
|
#define DT_BOTTOM 0x00000800
|
|
#define DT_HALFTONE 0x00001000
|
|
#define DT_MNEMONIC 0x00002000
|
|
#define DT_WORDBREAK 0x00004000
|
|
#define DT_ERASERECT 0x00008000
|
|
|
|
#define QW_NEXT 0
|
|
#define QW_PREV 1
|
|
#define QW_TOP 2
|
|
#define QW_BOTTOM 3
|
|
#define QW_OWNER 4
|
|
#define QW_PARENT 5
|
|
#define QW_NEXTTOP 6
|
|
#define QW_PREVTOP 7
|
|
#define QW_FRAMEOWNER 8
|
|
|
|
#define SWP_SIZE 0x0001
|
|
#define SWP_MOVE 0x0002
|
|
#define SWP_ZORDER 0x0004
|
|
#define SWP_SHOW 0x0008
|
|
#define SWP_HIDE 0x0010
|
|
#define SWP_NOREDRAW 0x0020
|
|
#define SWP_NOADJUST 0x0040
|
|
#define SWP_ACTIVATE 0x0080
|
|
#define SWP_DEACTIVATE 0x0100
|
|
#define SWP_EXTSTATECHANGE 0x0200
|
|
#define SWP_MINIMIZE 0x0400
|
|
#define SWP_MAXIMIZE 0x0800
|
|
#define SWP_RESTORE 0x1000
|
|
#define SWP_FOCUSACTIVATE 0x2000
|
|
#define SWP_FOCUSDEACTIVATE 0x4000
|
|
#define SWP_NOAUTOCLOSE 0x8000
|
|
|
|
#define AWP_MINIMIZED 0x00010000
|
|
#define AWP_MAXIMIZED 0x00020000
|
|
#define AWP_RESTORED 0x00040000
|
|
#define AWP_ACTIVATE 0x00080000
|
|
#define AWP_DEACTIVATE 0x00100000
|
|
|
|
#define HWND_DESKTOP ((HWND)1)
|
|
#define HWND_OBJECT ((HWND)2)
|
|
#define HWND_TOP ((HWND)3)
|
|
#define HWND_BOTTOM ((HWND)4)
|
|
#define HWND_THREADCAPTURE ((HWND)5)
|
|
|
|
#define EAF_DEFAULTOWNER 0x0001
|
|
#define EAF_UNCHANGEABLE 0x0002
|
|
#define EAF_REUSEICON 0x0004
|
|
|
|
#define ICON_FILE 1
|
|
#define ICON_RESOURCE 2
|
|
#define ICON_DATA 3
|
|
#define ICON_CLEAR 4
|
|
|
|
#define SZDDEFMT_RTF "Rich Text Format"
|
|
#define SZDDEFMT_PTRPICT "Printer_Picture"
|
|
|
|
#define STR_DLLNAME "keyremap"
|
|
|
|
#if defined (INCL_WINERRORS)
|
|
|
|
#define PMERR_INVALID_HWND 0x1001
|
|
#define PMERR_INVALID_HMQ 0x1002
|
|
#define PMERR_PARAMETER_OUT_OF_RANGE 0x1003
|
|
#define PMERR_WINDOW_LOCK_UNDERFLOW 0x1004
|
|
#define PMERR_WINDOW_LOCK_OVERFLOW 0x1005
|
|
#define PMERR_BAD_WINDOW_LOCK_COUNT 0x1006
|
|
#define PMERR_WINDOW_NOT_LOCKED 0x1007
|
|
#define PMERR_INVALID_SELECTOR 0x1008
|
|
#define PMERR_CALL_FROM_WRONG_THREAD 0x1009
|
|
#define PMERR_RESOURCE_NOT_FOUND 0x100a
|
|
#define PMERR_INVALID_STRING_PARM 0x100b
|
|
#define PMERR_INVALID_HHEAP 0x100c
|
|
#define PMERR_INVALID_HEAP_POINTER 0x100d
|
|
#define PMERR_INVALID_HEAP_SIZE_PARM 0x100e
|
|
#define PMERR_INVALID_HEAP_SIZE 0x100f
|
|
#define PMERR_INVALID_HEAP_SIZE_WORD 0x1010
|
|
#define PMERR_HEAP_OUT_OF_MEMORY 0x1011
|
|
#define PMERR_HEAP_MAX_SIZE_REACHED 0x1012
|
|
#define PMERR_INVALID_HATOMTBL 0x1013
|
|
#define PMERR_INVALID_ATOM 0x1014
|
|
#define PMERR_INVALID_ATOM_NAME 0x1015
|
|
#define PMERR_INVALID_INTEGER_ATOM 0x1016
|
|
#define PMERR_ATOM_NAME_NOT_FOUND 0x1017
|
|
#define PMERR_QUEUE_TOO_LARGE 0x1018
|
|
#define PMERR_INVALID_FLAG 0x1019
|
|
#define PMERR_INVALID_HACCEL 0x101a
|
|
#define PMERR_INVALID_HPTR 0x101b
|
|
#define PMERR_INVALID_HENUM 0x101c
|
|
#define PMERR_INVALID_SRC_CODEPAGE 0x101d
|
|
#define PMERR_INVALID_DST_CODEPAGE 0x101e
|
|
#define PMERR_UNKNOWN_COMPONENT_ID 0x101f
|
|
#define PMERR_UNKNOWN_ERROR_CODE 0x1020
|
|
#define PMERR_SEVERITY_LEVELS 0x1021
|
|
#define PMERR_INVALID_RESOURCE_FORMAT 0x1034
|
|
#define PMERR_NO_MSG_QUEUE 0x1036
|
|
#define PMERR_CANNOT_SET_FOCUS 0x1037
|
|
#define PMERR_QUEUE_FULL 0x1038
|
|
#define PMERR_LIBRARY_LOAD_FAILED 0x1039
|
|
#define PMERR_PROCEDURE_LOAD_FAILED 0x103a
|
|
#define PMERR_LIBRARY_DELETE_FAILED 0x103b
|
|
#define PMERR_PROCEDURE_DELETE_FAILED 0x103c
|
|
#define PMERR_ARRAY_TOO_LARGE 0x103d
|
|
#define PMERR_ARRAY_TOO_SMALL 0x103e
|
|
#define PMERR_DATATYPE_ENTRY_BAD_INDEX 0x103f
|
|
#define PMERR_DATATYPE_ENTRY_CTL_BAD 0x1040
|
|
#define PMERR_DATATYPE_ENTRY_CTL_MISS 0x1041
|
|
#define PMERR_DATATYPE_ENTRY_INVALID 0x1042
|
|
#define PMERR_DATATYPE_ENTRY_NOT_NUM 0x1043
|
|
#define PMERR_DATATYPE_ENTRY_NOT_OFF 0x1044
|
|
#define PMERR_DATATYPE_INVALID 0x1045
|
|
#define PMERR_DATATYPE_NOT_UNIQUE 0x1046
|
|
#define PMERR_DATATYPE_TOO_LONG 0x1047
|
|
#define PMERR_DATATYPE_TOO_SMALL 0x1048
|
|
#define PMERR_DIRECTION_INVALID 0x1049
|
|
#define PMERR_INVALID_HAB 0x104a
|
|
#define PMERR_INVALID_HSTRUCT 0x104d
|
|
#define PMERR_LENGTH_TOO_SMALL 0x104e
|
|
#define PMERR_MSGID_TOO_SMALL 0x104f
|
|
#define PMERR_NO_HANDLE_ALLOC 0x1050
|
|
#define PMERR_NOT_IN_A_PM_SESSION 0x1051
|
|
#define PMERR_MSG_QUEUE_ALREADY_EXISTS 0x1052
|
|
#define PMERR_SEND_MSG_TIMEOUT 0x1053
|
|
#define PMERROR_SEND_MSG_FAILED 0x1054
|
|
#define PMERR_OLD_RESOURCE 0x1055
|
|
#define PMERR_WPDSERVER_IS_ACTIVE 0x1056
|
|
#define PMERR_WPDSERVER_NOT_STARTED 0x1057
|
|
#define PMERR_SOMDD_IS_ACTIVE 0x1058
|
|
#define PMERR_SOMDD_NOT_STARTED 0x1059
|
|
|
|
#define PMERR_BIDI_FIRST 0x10f0
|
|
#define PMERR_BIDI_LAST 0x10ff
|
|
|
|
#endif /* INCL_WINERRORS */
|
|
|
|
#if defined (INCL_SHLERRORS)
|
|
|
|
#define PMERR_INVALID_PIB 0x1101
|
|
#define PMERR_INSUFF_SPACE_TO_ADD 0x1102
|
|
#define PMERR_INVALID_GROUP_HANDLE 0x1103
|
|
#define PMERR_DUPLICATE_TITLE 0x1104
|
|
#define PMERR_INVALID_TITLE 0x1105
|
|
#define PMERR_HANDLE_NOT_IN_GROUP 0x1107
|
|
#define PMERR_INVALID_TARGET_HANDLE 0x1106
|
|
#define PMERR_INVALID_PATH_STATEMENT 0x1108
|
|
#define PMERR_NO_PROGRAM_FOUND 0x1109
|
|
#define PMERR_INVALID_BUFFER_SIZE 0x110a
|
|
#define PMERR_BUFFER_TOO_SMALL 0x110b
|
|
#define PMERR_PL_INITIALISATION_FAIL 0x110c
|
|
#define PMERR_CANT_DESTROY_SYS_GROUP 0x110d
|
|
#define PMERR_INVALID_TYPE_CHANGE 0x110e
|
|
#define PMERR_INVALID_PROGRAM_HANDLE 0x110f
|
|
#define PMERR_NOT_CURRENT_PL_VERSION 0x1110
|
|
#define PMERR_INVALID_CIRCULAR_REF 0x1111
|
|
#define PMERR_MEMORY_ALLOCATION_ERR 0x1112
|
|
#define PMERR_MEMORY_DEALLOCATION_ERR 0x1113
|
|
#define PMERR_TASK_HEADER_TOO_BIG 0x1114
|
|
#define PMERR_INVALID_INI_FILE_HANDLE 0x1115
|
|
#define PMERR_MEMORY_SHARE 0x1116
|
|
#define PMERR_OPEN_QUEUE 0x1117
|
|
#define PMERR_CREATE_QUEUE 0x1118
|
|
#define PMERR_WRITE_QUEUE 0x1119
|
|
#define PMERR_READ_QUEUE 0x111a
|
|
#define PMERR_CALL_NOT_EXECUTED 0x111b
|
|
#define PMERR_UNKNOWN_APIPKT 0x111c
|
|
#define PMERR_INITHREAD_EXISTS 0x111d
|
|
#define PMERR_CREATE_THREAD 0x111e
|
|
#define PMERR_NO_HK_PROFILE_INSTALLED 0x111f
|
|
#define PMERR_INVALID_DIRECTORY 0x1120
|
|
#define PMERR_WILDCARD_IN_FILENAME 0x1121
|
|
#define PMERR_FILENAME_BUFFER_FULL 0x1122
|
|
#define PMERR_FILENAME_TOO_LONG 0x1123
|
|
#define PMERR_INI_FILE_IS_SYS_OR_USER 0x1124
|
|
#define PMERR_BROADCAST_PLMSG 0x1125
|
|
#define PMERR_190_INIT_DONE 0x1126
|
|
#define PMERR_HMOD_FOR_PMSHAPI 0x1127
|
|
#define PMERR_SET_HK_PROFILE 0x1128
|
|
#define PMERR_API_NOT_ALLOWED 0x1129
|
|
#define PMERR_INI_STILL_OPEN 0x112a
|
|
#define PMERR_PROGDETAILS_NOT_IN_INI 0x112b
|
|
#define PMERR_PIBSTRUCT_NOT_IN_INI 0x112c
|
|
#define PMERR_INVALID_DISKPROGDETAILS 0x112d
|
|
#define PMERR_PROGDETAILS_READ_FAILURE 0x112e
|
|
#define PMERR_PROGDETAILS_WRITE_FAILURE 0x112f
|
|
#define PMERR_PROGDETAILS_QSIZE_FAILURE 0x1130
|
|
#define PMERR_INVALID_PROGDETAILS 0x1131
|
|
#define PMERR_SHEPROFILEHOOK_NOT_FOUND 0x1132
|
|
#define PMERR_190PLCONVERTED 0x1133
|
|
#define PMERR_FAILED_TO_CONVERT_INI_PL 0x1134
|
|
#define PMERR_PMSHAPI_NOT_INITIALISED 0x1135
|
|
#define PMERR_INVALID_SHELL_API_HOOK_ID 0x1136
|
|
#define PMERR_DOS_ERROR 0x1200
|
|
#define PMERR_NO_SPACE 0x1201
|
|
#define PMERR_INVALID_SWITCH_HANDLE 0x1202
|
|
#define PMERR_NO_HANDLE 0x1203
|
|
#define PMERR_INVALID_PROCESS_ID 0x1204
|
|
#define PMERR_NOT_SHELL 0x1205
|
|
#define PMERR_INVALID_WINDOW 0x1206
|
|
#define PMERR_INVALID_POST_MSG 0x1207
|
|
#define PMERR_INVALID_PARAMETERS 0x1208
|
|
#define PMERR_INVALID_PROGRAM_TYPE 0x1209
|
|
#define PMERR_NOT_EXTENDED_FOCUS 0x120a
|
|
#define PMERR_INVALID_SESSION_ID 0x120b
|
|
#define PMERR_SMG_INVALID_ICON_FILE 0x120c
|
|
#define PMERR_SMG_ICON_NOT_CREATED 0x120d
|
|
#define PMERR_SHL_DEBUG 0x120e
|
|
#define PMERR_OPENING_INI_FILE 0x1301
|
|
#define PMERR_INI_FILE_CORRUPT 0x1302
|
|
#define PMERR_INVALID_PARM 0x1303
|
|
#define PMERR_NOT_IN_IDX 0x1304
|
|
#define PMERR_NO_ENTRIES_IN_GROUP 0x1305
|
|
#define PMERR_INI_WRITE_FAIL 0x1306
|
|
#define PMERR_IDX_FULL 0x1307
|
|
#define PMERR_INI_PROTECTED 0x1308
|
|
#define PMERR_MEMORY_ALLOC 0x1309
|
|
#define PMERR_INI_INIT_ALREADY_DONE 0x130a
|
|
#define PMERR_INVALID_INTEGER 0x130b
|
|
#define PMERR_INVALID_ASCIIZ 0x130c
|
|
#define PMERR_CAN_NOT_CALL_SPOOLER 0x130d
|
|
#define PMERR_VALIDATION_REJECTED 0x130d /*!*/
|
|
#define PMERR_WARNING_WINDOW_NOT_KILLED 0x1401
|
|
#define PMERR_ERROR_INVALID_WINDOW 0x1402
|
|
#define PMERR_ALREADY_INITIALIZED 0x1403
|
|
#define PMERR_MSG_PROG_NO_MOU 0x1405
|
|
#define PMERR_MSG_PROG_NON_RECOV 0x1406
|
|
#define PMERR_WINCONV_INVALID_PATH 0x1407
|
|
#define PMERR_PI_NOT_INITIALISED 0x1408
|
|
#define PMERR_PL_NOT_INITIALISED 0x1409
|
|
#define PMERR_NO_TASK_MANAGER 0x140a
|
|
#define PMERR_SAVE_NOT_IN_PROGRESS 0x140b
|
|
#define PMERR_NO_STACK_SPACE 0x140c
|
|
#define PMERR_INVALID_COLR_FIELD 0x140d
|
|
#define PMERR_INVALID_COLR_VALUE 0x140e
|
|
#define PMERR_COLR_WRITE 0x140f
|
|
#define PMERR_TARGET_FILE_EXISTS 0x1501
|
|
#define PMERR_SOURCE_SAME_AS_TARGET 0x1502
|
|
#define PMERR_SOURCE_FILE_NOT_FOUND 0x1503
|
|
#define PMERR_INVALID_NEW_PATH 0x1504
|
|
#define PMERR_TARGET_FILE_NOT_FOUND 0x1505
|
|
#define PMERR_INVALID_DRIVE_NUMBER 0x1506
|
|
#define PMERR_NAME_TOO_LONG 0x1507
|
|
#define PMERR_NOT_ENOUGH_ROOM_ON_DISK 0x1508
|
|
#define PMERR_NOT_ENOUGH_MEM 0x1509
|
|
#define PMERR_LOG_DRV_DOES_NOT_EXIST 0x150b
|
|
#define PMERR_INVALID_DRIVE 0x150c
|
|
#define PMERR_ACCESS_DENIED 0x150d
|
|
#define PMERR_NO_FIRST_SLASH 0x150e
|
|
#define PMERR_READ_ONLY_FILE 0x150f
|
|
#define PMERR_GROUP_PROTECTED 0x151f
|
|
#define PMERR_INVALID_PROGRAM_CATEGORY 0x152f
|
|
#define PMERR_INVALID_APPL 0x1530
|
|
#define PMERR_CANNOT_START 0x1531
|
|
#define PMERR_STARTED_IN_BACKGROUND 0x1532
|
|
#define PMERR_INVALID_HAPP 0x1533
|
|
#define PMERR_CANNOT_STOP 0x1534
|
|
#define PMERR_INVALID_FREE_MESSAGE_ID 0x1630
|
|
#define PMERR_FUNCTION_NOT_SUPPORTED 0x1641
|
|
#define PMERR_INVALID_ARRAY_COUNT 0x1642
|
|
#define PMERR_INVALID_LENGTH 0x1643
|
|
#define PMERR_INVALID_BUNDLE_TYPE 0x1644
|
|
#define PMERR_INVALID_PARAMETER 0x1645
|
|
#define PMERR_INVALID_NUMBER_OF_PARMS 0x1646
|
|
#define PMERR_GREATER_THAN_64K 0x1647
|
|
#define PMERR_INVALID_PARAMETER_TYPE 0x1648
|
|
#define PMERR_NEGATIVE_STRCOND_DIM 0x1649
|
|
#define PMERR_INVALID_NUMBER_OF_TYPES 0x164a
|
|
#define PMERR_INCORRECT_HSTRUCT 0x164b
|
|
#define PMERR_INVALID_ARRAY_SIZE 0x164c
|
|
#define PMERR_INVALID_CONTROL_DATATYPE 0x164d
|
|
#define PMERR_INCOMPLETE_CONTROL_SEQU 0x164e
|
|
#define PMERR_INVALID_DATATYPE 0x164f
|
|
#define PMERR_INCORRECT_DATATYPE 0x1650
|
|
#define PMERR_NOT_SELF_DESCRIBING_DTYP 0x1651
|
|
#define PMERR_INVALID_CTRL_SEQ_INDEX 0x1652
|
|
#define PMERR_INVALID_TYPE_FOR_LENGTH 0x1653
|
|
#define PMERR_INVALID_TYPE_FOR_OFFSET 0x1654
|
|
#define PMERR_INVALID_TYPE_FOR_MPARAM 0x1655
|
|
#define PMERR_INVALID_MESSAGE_ID 0x1656
|
|
#define PMERR_C_LENGTH_TOO_SMALL 0x1657
|
|
#define PMERR_APPL_STRUCTURE_TOO_SMALL 0x1658
|
|
#define PMERR_INVALID_ERRORINFO_HANDLE 0x1659
|
|
#define PMERR_INVALID_CHARACTER_INDEX 0x165a
|
|
|
|
#endif /* INCL_SHLERRORS */
|
|
|
|
#if defined (INCL_GPIERRORS)
|
|
|
|
#define PMERR_OK 0x0000
|
|
#define PMERR_ALREADY_IN_AREA 0x2001
|
|
#define PMERR_ALREADY_IN_ELEMENT 0x2002
|
|
#define PMERR_ALREADY_IN_PATH 0x2003
|
|
#define PMERR_ALREADY_IN_SEG 0x2004
|
|
#define PMERR_AREA_INCOMPLETE 0x2005
|
|
#define PMERR_BASE_ERROR 0x2006
|
|
#define PMERR_BITBLT_LENGTH_EXCEEDED 0x2007
|
|
#define PMERR_BITMAP_IN_USE 0x2008
|
|
#define PMERR_BITMAP_IS_SELECTED 0x2009
|
|
#define PMERR_BITMAP_NOT_FOUND 0x200a
|
|
#define PMERR_BITMAP_NOT_SELECTED 0x200b
|
|
#define PMERR_BOUNDS_OVERFLOW 0x200c
|
|
#define PMERR_CALLED_SEG_IS_CHAINED 0x200d
|
|
#define PMERR_CALLED_SEG_IS_CURRENT 0x200e
|
|
#define PMERR_CALLED_SEG_NOT_FOUND 0x200f
|
|
#define PMERR_CANNOT_DELETE_ALL_DATA 0x2010
|
|
#define PMERR_CANNOT_REPLACE_ELEMENT_0 0x2011
|
|
#define PMERR_COL_TABLE_NOT_REALIZABLE 0x2012
|
|
#define PMERR_COL_TABLE_NOT_REALIZED 0x2013
|
|
#define PMERR_COORDINATE_OVERFLOW 0x2014
|
|
#define PMERR_CORR_FORMAT_MISMATCH 0x2015
|
|
#define PMERR_DATA_TOO_LONG 0x2016
|
|
#define PMERR_DC_IS_ASSOCIATED 0x2017
|
|
#define PMERR_DESC_STRING_TRUNCATED 0x2018
|
|
#define PMERR_DEVICE_DRIVER_ERROR_1 0x2019
|
|
#define PMERR_DEVICE_DRIVER_ERROR_2 0x201a
|
|
#define PMERR_DEVICE_DRIVER_ERROR_3 0x201b
|
|
#define PMERR_DEVICE_DRIVER_ERROR_4 0x201c
|
|
#define PMERR_DEVICE_DRIVER_ERROR_5 0x201d
|
|
#define PMERR_DEVICE_DRIVER_ERROR_6 0x201e
|
|
#define PMERR_DEVICE_DRIVER_ERROR_7 0x201f
|
|
#define PMERR_DEVICE_DRIVER_ERROR_8 0x2020
|
|
#define PMERR_DEVICE_DRIVER_ERROR_9 0x2021
|
|
#define PMERR_DEVICE_DRIVER_ERROR_10 0x2022
|
|
#define PMERR_DEV_FUNC_NOT_INSTALLED 0x2023
|
|
#define PMERR_DOSOPEN_FAILURE 0x2024
|
|
#define PMERR_DOSREAD_FAILURE 0x2025
|
|
#define PMERR_DRIVER_NOT_FOUND 0x2026
|
|
#define PMERR_DUP_SEG 0x2027
|
|
#define PMERR_DYNAMIC_SEG_SEQ_ERROR 0x2028
|
|
#define PMERR_DYNAMIC_SEG_ZERO_INV 0x2029
|
|
#define PMERR_ELEMENT_INCOMPLETE 0x202a
|
|
#define PMERR_ESC_CODE_NOT_SUPPORTED 0x202b
|
|
#define PMERR_EXCEEDS_MAX_SEG_LENGTH 0x202c
|
|
#define PMERR_FONT_AND_MODE_MISMATCH 0x202d
|
|
#define PMERR_FONT_FILE_NOT_LOADED 0x202e
|
|
#define PMERR_FONT_NOT_LOADED 0x202f
|
|
#define PMERR_FONT_TOO_BIG 0x2030
|
|
#define PMERR_HARDWARE_INIT_FAILURE 0x2031
|
|
#define PMERR_HBITMAP_BUSY 0x2032
|
|
#define PMERR_HDC_BUSY 0x2033
|
|
#define PMERR_HRGN_BUSY 0x2034
|
|
#define PMERR_HUGE_FONTS_NOT_SUPPORTED 0x2035
|
|
#define PMERR_ID_HAS_NO_BITMAP 0x2036
|
|
#define PMERR_IMAGE_INCOMPLETE 0x2037
|
|
#define PMERR_INCOMPAT_COLOR_FORMAT 0x2038
|
|
#define PMERR_INCOMPAT_COLOR_OPTIONS 0x2039
|
|
#define PMERR_INCOMPATIBLE_BITMAP 0x203a
|
|
#define PMERR_INCOMPATIBLE_METAFILE 0x203b
|
|
#define PMERR_INCORRECT_DC_TYPE 0x203c
|
|
#define PMERR_INSUFFICIENT_DISK_SPACE 0x203d
|
|
#define PMERR_INSUFFICIENT_MEMORY 0x203e
|
|
#define PMERR_INV_ANGLE_PARM 0x203f
|
|
#define PMERR_INV_ARC_CONTROL 0x2040
|
|
#define PMERR_INV_AREA_CONTROL 0x2041
|
|
#define PMERR_INV_ARC_POINTS 0x2042
|
|
#define PMERR_INV_ATTR_MODE 0x2043
|
|
#define PMERR_INV_BACKGROUND_COL_ATTR 0x2044
|
|
#define PMERR_INV_BACKGROUND_MIX_ATTR 0x2045
|
|
#define PMERR_INV_BITBLT_MIX 0x2046
|
|
#define PMERR_INV_BITBLT_STYLE 0x2047
|
|
#define PMERR_INV_BITMAP_DIMENSION 0x2048
|
|
#define PMERR_INV_BOX_CONTROL 0x2049
|
|
#define PMERR_INV_BOX_ROUNDING_PARM 0x204a
|
|
#define PMERR_INV_CHAR_ANGLE_ATTR 0x204b
|
|
#define PMERR_INV_CHAR_DIRECTION_ATTR 0x204c
|
|
#define PMERR_INV_CHAR_MODE_ATTR 0x204d
|
|
#define PMERR_INV_CHAR_POS_OPTIONS 0x204e
|
|
#define PMERR_INV_CHAR_SET_ATTR 0x204f
|
|
#define PMERR_INV_CHAR_SHEAR_ATTR 0x2050
|
|
#define PMERR_INV_CLIP_PATH_OPTIONS 0x2051
|
|
#define PMERR_INV_CODEPAGE 0x2052
|
|
#define PMERR_INV_COLOR_ATTR 0x2053
|
|
#define PMERR_INV_COLOR_DATA 0x2054
|
|
#define PMERR_INV_COLOR_FORMAT 0x2055
|
|
#define PMERR_INV_COLOR_INDEX 0x2056
|
|
#define PMERR_INV_COLOR_OPTIONS 0x2057
|
|
#define PMERR_INV_COLOR_START_INDEX 0x2058
|
|
#define PMERR_INV_COORD_OFFSET 0x2059
|
|
#define PMERR_INV_COORD_SPACE 0x205a
|
|
#define PMERR_INV_COORDINATE 0x205b
|
|
#define PMERR_INV_CORRELATE_DEPTH 0x205c
|
|
#define PMERR_INV_CORRELATE_TYPE 0x205d
|
|
#define PMERR_INV_CURSOR_BITMAP 0x205e
|
|
#define PMERR_INV_DC_DATA 0x205f
|
|
#define PMERR_INV_DC_TYPE 0x2060
|
|
#define PMERR_INV_DEVICE_NAME 0x2061
|
|
#define PMERR_INV_DEV_MODES_OPTIONS 0x2062
|
|
#define PMERR_INV_DRAW_CONTROL 0x2063
|
|
#define PMERR_INV_DRAW_VALUE 0x2064
|
|
#define PMERR_INV_DRAWING_MODE 0x2065
|
|
#define PMERR_INV_DRIVER_DATA 0x2066
|
|
#define PMERR_INV_DRIVER_NAME 0x2067
|
|
#define PMERR_INV_DRAW_BORDER_OPTION 0x2068
|
|
#define PMERR_INV_EDIT_MODE 0x2069
|
|
#define PMERR_INV_ELEMENT_OFFSET 0x206a
|
|
#define PMERR_INV_ELEMENT_POINTER 0x206b
|
|
#define PMERR_INV_END_PATH_OPTIONS 0x206c
|
|
#define PMERR_INV_ESC_CODE 0x206d
|
|
#define PMERR_INV_ESCAPE_DATA 0x206e
|
|
#define PMERR_INV_EXTENDED_LCID 0x206f
|
|
#define PMERR_INV_FILL_PATH_OPTIONS 0x2070
|
|
#define PMERR_INV_FIRST_CHAR 0x2071
|
|
#define PMERR_INV_FONT_ATTRS 0x2072
|
|
#define PMERR_INV_FONT_FILE_DATA 0x2073
|
|
#define PMERR_INV_FOR_THIS_DC_TYPE 0x2074
|
|
#define PMERR_INV_FORMAT_CONTROL 0x2075
|
|
#define PMERR_INV_FORMS_CODE 0x2076
|
|
#define PMERR_INV_FONTDEF 0x2077
|
|
#define PMERR_INV_GEOM_LINE_WIDTH_ATTR 0x2078
|
|
#define PMERR_INV_GETDATA_CONTROL 0x2079
|
|
#define PMERR_INV_GRAPHICS_FIELD 0x207a
|
|
#define PMERR_INV_HBITMAP 0x207b
|
|
#define PMERR_INV_HDC 0x207c
|
|
#define PMERR_INV_HJOURNAL 0x207d
|
|
#define PMERR_INV_HMF 0x207e
|
|
#define PMERR_INV_HPS 0x207f
|
|
#define PMERR_INV_HRGN 0x2080
|
|
#define PMERR_INV_ID 0x2081
|
|
#define PMERR_INV_IMAGE_DATA_LENGTH 0x2082
|
|
#define PMERR_INV_IMAGE_DIMENSION 0x2083
|
|
#define PMERR_INV_IMAGE_FORMAT 0x2084
|
|
#define PMERR_INV_IN_AREA 0x2085
|
|
#define PMERR_INV_IN_CALLED_SEG 0x2086
|
|
#define PMERR_INV_IN_CURRENT_EDIT_MODE 0x2087
|
|
#define PMERR_INV_IN_DRAW_MODE 0x2088
|
|
#define PMERR_INV_IN_ELEMENT 0x2089
|
|
#define PMERR_INV_IN_IMAGE 0x208a
|
|
#define PMERR_INV_IN_PATH 0x208b
|
|
#define PMERR_INV_IN_RETAIN_MODE 0x208c
|
|
#define PMERR_INV_IN_SEG 0x208d
|
|
#define PMERR_INV_IN_VECTOR_SYMBOL 0x208e
|
|
#define PMERR_INV_INFO_TABLE 0x208f
|
|
#define PMERR_INV_JOURNAL_OPTION 0x2090
|
|
#define PMERR_INV_KERNING_FLAGS 0x2091
|
|
#define PMERR_INV_LENGTH_OR_COUNT 0x2092
|
|
#define PMERR_INV_LINE_END_ATTR 0x2093
|
|
#define PMERR_INV_LINE_JOIN_ATTR 0x2094
|
|
#define PMERR_INV_LINE_TYPE_ATTR 0x2095
|
|
#define PMERR_INV_LINE_WIDTH_ATTR 0x2096
|
|
#define PMERR_INV_LOGICAL_ADDRESS 0x2097
|
|
#define PMERR_INV_MARKER_BOX_ATTR 0x2098
|
|
#define PMERR_INV_MARKER_SET_ATTR 0x2099
|
|
#define PMERR_INV_MARKER_SYMBOL_ATTR 0x209a
|
|
#define PMERR_INV_MATRIX_ELEMENT 0x209b
|
|
#define PMERR_INV_MAX_HITS 0x209c
|
|
#define PMERR_INV_METAFILE 0x209d
|
|
#define PMERR_INV_METAFILE_LENGTH 0x209e
|
|
#define PMERR_INV_METAFILE_OFFSET 0x209f
|
|
#define PMERR_INV_MICROPS_DRAW_CONTROL 0x20a0
|
|
#define PMERR_INV_MICROPS_FUNCTION 0x20a1
|
|
#define PMERR_INV_MICROPS_ORDER 0x20a2
|
|
#define PMERR_INV_MIX_ATTR 0x20a3
|
|
#define PMERR_INV_MODE_FOR_OPEN_DYN 0x20a4
|
|
#define PMERR_INV_MODE_FOR_REOPEN_SEG 0x20a5
|
|
#define PMERR_INV_MODIFY_PATH_MODE 0x20a6
|
|
#define PMERR_INV_MULTIPLIER 0x20a7
|
|
#define PMERR_INV_NESTED_FIGURES 0x20a8
|
|
#define PMERR_INV_OR_INCOMPAT_OPTIONS 0x20a9
|
|
#define PMERR_INV_ORDER_LENGTH 0x20aa
|
|
#define PMERR_INV_ORDERING_PARM 0x20ab
|
|
#define PMERR_INV_OUTSIDE_DRAW_MODE 0x20ac
|
|
#define PMERR_INV_PAGE_VIEWPORT 0x20ad
|
|
#define PMERR_INV_PATH_ID 0x20ae
|
|
#define PMERR_INV_PATH_MODE 0x20af
|
|
#define PMERR_INV_PATTERN_ATTR 0x20b0
|
|
#define PMERR_INV_PATTERN_REF_PT_ATTR 0x20b1
|
|
#define PMERR_INV_PATTERN_SET_ATTR 0x20b2
|
|
#define PMERR_INV_PATTERN_SET_FONT 0x20b3
|
|
#define PMERR_INV_PICK_APERTURE_OPTION 0x20b4
|
|
#define PMERR_INV_PICK_APERTURE_POSN 0x20b5
|
|
#define PMERR_INV_PICK_APERTURE_SIZE 0x20b6
|
|
#define PMERR_INV_PICK_NUMBER 0x20b7
|
|
#define PMERR_INV_PLAY_METAFILE_OPTION 0x20b8
|
|
#define PMERR_INV_PRIMITIVE_TYPE 0x20b9
|
|
#define PMERR_INV_PS_SIZE 0x20ba
|
|
#define PMERR_INV_PUTDATA_FORMAT 0x20bb
|
|
#define PMERR_INV_QUERY_ELEMENT_NO 0x20bc
|
|
#define PMERR_INV_RECT 0x20bd
|
|
#define PMERR_INV_REGION_CONTROL 0x20be
|
|
#define PMERR_INV_REGION_MIX_MODE 0x20bf
|
|
#define PMERR_INV_REPLACE_MODE_FUNC 0x20c0
|
|
#define PMERR_INV_RESERVED_FIELD 0x20c1
|
|
#define PMERR_INV_RESET_OPTIONS 0x20c2
|
|
#define PMERR_INV_RGBCOLOR 0x20c3
|
|
#define PMERR_INV_SCAN_START 0x20c4
|
|
#define PMERR_INV_SEG_ATTR 0x20c5
|
|
#define PMERR_INV_SEG_ATTR_VALUE 0x20c6
|
|
#define PMERR_INV_SEG_CH_LENGTH 0x20c7
|
|
#define PMERR_INV_SEG_NAME 0x20c8
|
|
#define PMERR_INV_SEG_OFFSET 0x20c9
|
|
#define PMERR_INV_SETID 0x20ca
|
|
#define PMERR_INV_SETID_TYPE 0x20cb
|
|
#define PMERR_INV_SET_VIEWPORT_OPTION 0x20cc
|
|
#define PMERR_INV_SHARPNESS_PARM 0x20cd
|
|
#define PMERR_INV_SOURCE_OFFSET 0x20ce
|
|
#define PMERR_INV_STOP_DRAW_VALUE 0x20cf
|
|
#define PMERR_INV_TRANSFORM_TYPE 0x20d0
|
|
#define PMERR_INV_USAGE_PARM 0x20d1
|
|
#define PMERR_INV_VIEWING_LIMITS 0x20d2
|
|
#define PMERR_JFILE_BUSY 0x20d3
|
|
#define PMERR_JNL_FUNC_DATA_TOO_LONG 0x20d4
|
|
#define PMERR_KERNING_NOT_SUPPORTED 0x20d5
|
|
#define PMERR_LABEL_NOT_FOUND 0x20d6
|
|
#define PMERR_MATRIX_OVERFLOW 0x20d7
|
|
#define PMERR_METAFILE_INTERNAL_ERROR 0x20d8
|
|
#define PMERR_METAFILE_IN_USE 0x20d9
|
|
#define PMERR_METAFILE_LIMIT_EXCEEDED 0x20da
|
|
#define PMERR_NAME_STACK_FULL 0x20db
|
|
#define PMERR_NOT_CREATED_BY_DEVOPENDC 0x20dc
|
|
#define PMERR_NOT_IN_AREA 0x20dd
|
|
#define PMERR_NOT_IN_DRAW_MODE 0x20de
|
|
#define PMERR_NOT_IN_ELEMENT 0x20df
|
|
#define PMERR_NOT_IN_IMAGE 0x20e0
|
|
#define PMERR_NOT_IN_PATH 0x20e1
|
|
#define PMERR_NOT_IN_RETAIN_MODE 0x20e2
|
|
#define PMERR_NOT_IN_SEG 0x20e3
|
|
#define PMERR_NO_BITMAP_SELECTED 0x20e4
|
|
#define PMERR_NO_CURRENT_ELEMENT 0x20e5
|
|
#define PMERR_NO_CURRENT_SEG 0x20e6
|
|
#define PMERR_NO_METAFILE_RECORD_HANDLE 0x20e7
|
|
#define PMERR_ORDER_TOO_BIG 0x20e8
|
|
#define PMERR_OTHER_SET_ID_REFS 0x20e9
|
|
#define PMERR_OVERRAN_SEG 0x20ea
|
|
#define PMERR_OWN_SET_ID_REFS 0x20eb
|
|
#define PMERR_PATH_INCOMPLETE 0x20ec
|
|
#define PMERR_PATH_LIMIT_EXCEEDED 0x20ed
|
|
#define PMERR_PATH_UNKNOWN 0x20ee
|
|
#define PMERR_PEL_IS_CLIPPED 0x20ef
|
|
#define PMERR_PEL_NOT_AVAILABLE 0x20f0
|
|
#define PMERR_PRIMITIVE_STACK_EMPTY 0x20f1
|
|
#define PMERR_PROLOG_ERROR 0x20f2
|
|
#define PMERR_PROLOG_SEG_ATTR_NOT_SET 0x20f3
|
|
#define PMERR_PS_BUSY 0x20f4
|
|
#define PMERR_PS_IS_ASSOCIATED 0x20f5
|
|
#define PMERR_RAM_JNL_FILE_TOO_SMALL 0x20f6
|
|
#define PMERR_REALIZE_NOT_SUPPORTED 0x20f7
|
|
#define PMERR_REGION_IS_CLIP_REGION 0x20f8
|
|
#define PMERR_RESOURCE_DEPLETION 0x20f9
|
|
#define PMERR_SEG_AND_REFSEG_ARE_SAME 0x20fa
|
|
#define PMERR_SEG_CALL_RECURSIVE 0x20fb
|
|
#define PMERR_SEG_CALL_STACK_EMPTY 0x20fc
|
|
#define PMERR_SEG_CALL_STACK_FULL 0x20fd
|
|
#define PMERR_SEG_IS_CURRENT 0x20fe
|
|
#define PMERR_SEG_NOT_CHAINED 0x20ff
|
|
#define PMERR_SEG_NOT_FOUND 0x2100
|
|
#define PMERR_SEG_STORE_LIMIT_EXCEEDED 0x2101
|
|
#define PMERR_SETID_IN_USE 0x2102
|
|
#define PMERR_SETID_NOT_FOUND 0x2103
|
|
#define PMERR_STARTDOC_NOT_ISSUED 0x2104
|
|
#define PMERR_STOP_DRAW_OCCURRED 0x2105
|
|
#define PMERR_TOO_MANY_METAFILES_IN_USE 0x2106
|
|
#define PMERR_TRUNCATED_ORDER 0x2107
|
|
#define PMERR_UNCHAINED_SEG_ZERO_INV 0x2108
|
|
#define PMERR_UNSUPPORTED_ATTR 0x2109
|
|
#define PMERR_UNSUPPORTED_ATTR_VALUE 0x210a
|
|
#define PMERR_ENDDOC_NOT_ISSUED 0x210b
|
|
#define PMERR_PS_NOT_ASSOCIATED 0x210c
|
|
#define PMERR_INV_FLOOD_FILL_OPTIONS 0x210d
|
|
#define PMERR_INV_FACENAME 0x210e
|
|
#define PMERR_PALETTE_SELECTED 0x210f
|
|
#define PMERR_NO_PALETTE_SELECTED 0x2110
|
|
#define PMERR_INV_HPAL 0x2111
|
|
#define PMERR_PALETTE_BUSY 0x2112
|
|
#define PMERR_START_POINT_CLIPPED 0x2113
|
|
#define PMERR_NO_FILL 0x2114
|
|
#define PMERR_INV_FACENAMEDESC 0x2115
|
|
#define PMERR_INV_BITMAP_DATA 0x2116
|
|
#define PMERR_INV_CHAR_ALIGN_ATTR 0x2117
|
|
#define PMERR_INV_HFONT 0x2118
|
|
#define PMERR_HFONT_IS_SELECTED 0x2119
|
|
#define PMERR_DRVR_NOT_SUPPORTED 0x2120
|
|
#define PMERR_INV_INKPS_FUNCTION 0x2121
|
|
|
|
#endif /* INCL_GPIERRORS */
|
|
|
|
#if defined (INCL_WPERRORS)
|
|
|
|
#define WPERR_PROTECTED_CLASS 0x1700
|
|
#define WPERR_INVALID_CLASS 0x1701
|
|
#define WPERR_INVALID_SUPERCLASS 0x1702
|
|
#define WPERR_NO_MEMORY 0x1703
|
|
#define WPERR_SEMAPHORE_ERROR 0x1704
|
|
#define WPERR_BUFFER_TOO_SMALL 0x1705
|
|
#define WPERR_CLSLOADMOD_FAILED 0x1706
|
|
#define WPERR_CLSPROCADDR_FAILED 0x1707
|
|
#define WPERR_OBJWORD_LOCATION 0x1708
|
|
#define WPERR_INVALID_OBJECT 0x1709
|
|
#define WPERR_MEMORY_CLEANUP 0x170a
|
|
#define WPERR_INVALID_MODULE 0x170b
|
|
#define WPERR_INVALID_OLDCLASS 0x170c
|
|
#define WPERR_INVALID_NEWCLASS 0x170d
|
|
#define WPERR_NOT_IMMEDIATE_CHILD 0x170e
|
|
#define WPERR_NOT_WORKPLACE_CLASS 0x170f
|
|
#define WPERR_CANT_REPLACE_METACLS 0x1710
|
|
#define WPERR_INI_FILE_WRITE 0x1711
|
|
#define WPERR_INVALID_FOLDER 0x1712
|
|
#define WPERR_BUFFER_OVERFLOW 0x1713
|
|
#define WPERR_OBJECT_NOT_FOUND 0x1714
|
|
#define WPERR_INVALID_HFIND 0x1715
|
|
#define WPERR_INVALID_COUNT 0x1716
|
|
#define WPERR_INVALID_BUFFER 0x1717
|
|
#define WPERR_ALREADY_EXISTS 0x1718
|
|
#define WPERR_INVALID_FLAGS 0x1719
|
|
#define WPERR_INVALID_OBJECTID 0x1720
|
|
#define WPERR_INVALID_TARGET_OBJECT 0x1721
|
|
|
|
#endif /* INCL_WPERRORS */
|
|
|
|
#if defined (INCL_SPLERRORS)
|
|
|
|
#define PMERR_SPL_DRIVER_ERROR 0x4001
|
|
#define PMERR_SPL_DEVICE_ERROR 0x4002
|
|
#define PMERR_SPL_DEVICE_NOT_INSTALLED 0x4003
|
|
#define PMERR_SPL_QUEUE_ERROR 0x4004
|
|
#define PMERR_SPL_INV_HSPL 0x4005
|
|
#define PMERR_SPL_NO_DISK_SPACE 0x4006
|
|
#define PMERR_SPL_NO_MEMORY 0x4007
|
|
#define PMERR_SPL_PRINT_ABORT 0x4008
|
|
#define PMERR_SPL_SPOOLER_NOT_INSTALLED 0x4009
|
|
#define PMERR_SPL_INV_FORMS_CODE 0x400a
|
|
#define PMERR_SPL_INV_PRIORITY 0x400b
|
|
#define PMERR_SPL_NO_FREE_JOB_ID 0x400c
|
|
#define PMERR_SPL_NO_DATA 0x400d
|
|
#define PMERR_SPL_INV_TOKEN 0x400e
|
|
#define PMERR_SPL_INV_DATATYPE 0x400f
|
|
#define PMERR_SPL_PROCESSOR_ERROR 0x4010
|
|
#define PMERR_SPL_INV_JOB_ID 0x4011
|
|
#define PMERR_SPL_JOB_NOT_PRINTING 0x4012
|
|
#define PMERR_SPL_JOB_PRINTING 0x4013
|
|
#define PMERR_SPL_QUEUE_ALREADY_EXISTS 0x4014
|
|
#define PMERR_SPL_INV_QUEUE_NAME 0x4015
|
|
#define PMERR_SPL_QUEUE_NOT_EMPTY 0x4016
|
|
#define PMERR_SPL_DEVICE_ALREADY_EXISTS 0x4017
|
|
#define PMERR_SPL_DEVICE_LIMIT_REACHED 0x4018
|
|
#define PMERR_SPL_STATUS_STRING_TRUNC 0x4019
|
|
#define PMERR_SPL_INV_LENGTH_OR_COUNT 0x401a
|
|
#define PMERR_SPL_FILE_NOT_FOUND 0x401b
|
|
#define PMERR_SPL_CANNOT_OPEN_FILE 0x401c
|
|
#define PMERR_SPL_DRIVER_NOT_INSTALLED 0x401d
|
|
#define PMERR_SPL_INV_PROCESSOR_DATTYPE 0x401e
|
|
#define PMERR_SPL_INV_DRIVER_DATATYPE 0x401f
|
|
#define PMERR_SPL_PROCESSOR_NOT_INST 0x4020
|
|
#define PMERR_SPL_NO_SUCH_LOG_ADDRESS 0x4021
|
|
#define PMERR_SPL_PRINTER_NOT_FOUND 0x4022
|
|
#define PMERR_SPL_DD_NOT_FOUND 0x4023
|
|
#define PMERR_SPL_QUEUE_NOT_FOUND 0x4024
|
|
#define PMERR_SPL_MANY_QUEUES_ASSOC 0x4025
|
|
#define PMERR_SPL_NO_QUEUES_ASSOCIATED 0x4026
|
|
#define PMERR_SPL_INI_FILE_ERROR 0x4027
|
|
#define PMERR_SPL_NO_DEFAULT_QUEUE 0x4028
|
|
#define PMERR_SPL_NO_CURRENT_FORMS_CODE 0x4029
|
|
#define PMERR_SPL_NOT_AUTHORISED 0x402a
|
|
#define PMERR_SPL_TEMP_NETWORK_ERROR 0x402b
|
|
#define PMERR_SPL_HARD_NETWORK_ERROR 0x402c
|
|
#define PMERR_DEL_NOT_ALLOWED 0x402d
|
|
#define PMERR_CANNOT_DEL_QP_REF 0x402e
|
|
#define PMERR_CANNOT_DEL_QNAME_REF 0x402f
|
|
#define PMERR_CANNOT_DEL_PRINTER_DD_REF 0x4030
|
|
#define PMERR_CANNOT_DEL_PRN_NAME_REF 0x4031
|
|
#define PMERR_CANNOT_DEL_PRN_ADDR_REF 0x4032
|
|
#define PMERR_SPOOLER_QP_NOT_DEFINED 0x4033
|
|
#define PMERR_PRN_NAME_NOT_DEFINED 0x4034
|
|
#define PMERR_PRN_ADDR_NOT_DEFINED 0x4035
|
|
#define PMERR_PRINTER_DD_NOT_DEFINED 0x4036
|
|
#define PMERR_PRINTER_QUEUE_NOT_DEFINED 0x4037
|
|
#define PMERR_PRN_ADDR_IN_USE 0x4038
|
|
#define PMERR_SPL_TOO_MANY_OPEN_FILES 0x4039
|
|
#define PMERR_SPL_CP_NOT_REQD 0x403a
|
|
#define PMERR_SPL_PORT_SHUTDOWN 0x403b
|
|
#define PMERR_SPL_NOT_HANDLED 0x403c
|
|
#define PMERR_SPL_CNV_NOT_INIT 0x403d
|
|
#define PMERR_SPL_INIT_IN_PROGRESS 0x403e
|
|
#define PMERR_SPL_TYPE_NOT_AVAIL 0x403f
|
|
#define PMERR_UNABLE_TO_CLOSE_DEVICE 0x4040
|
|
#define PMERR_SPL_SESSION_TERM 0x4041
|
|
#define PMERR_SPL_NOT_REGISTERED 0x4042
|
|
|
|
#endif /* INCL_SPLERRORS */
|
|
|
|
#if defined (INCL_PICERRORS)
|
|
|
|
#define PMERR_INV_TYPE 0x5001
|
|
#define PMERR_INV_CONV 0x5002
|
|
#define PMERR_INV_SEGLEN 0x5003
|
|
#define PMERR_DUP_SEGNAME 0x5004
|
|
#define PMERR_INV_XFORM 0x5005
|
|
#define PMERR_INV_VIEWLIM 0x5006
|
|
#define PMERR_INV_3DCOORD 0x5007
|
|
#define PMERR_SMB_OVFLOW 0x5008
|
|
#define PMERR_SEG_OVFLOW 0x5009
|
|
#define PMERR_PIC_DUP_FILENAME 0x5010
|
|
|
|
#endif /* INCL_PICERRORS */
|
|
|
|
#if defined (INCL_WINERRORS)
|
|
|
|
#define WINDBG_HWND_NOT_DESTROYED 0x1022
|
|
#define WINDBG_HPTR_NOT_DESTROYED 0x1023
|
|
#define WINDBG_HACCEL_NOT_DESTROYED 0x1024
|
|
#define WINDBG_HENUM_NOT_DESTROYED 0x1025
|
|
#define WINDBG_VISRGN_SEM_BUSY 0x1026
|
|
#define WINDBG_USER_SEM_BUSY 0x1027
|
|
#define WINDBG_DC_CACHE_BUSY 0x1028
|
|
#define WINDBG_HOOK_STILL_INSTALLED 0x1029
|
|
#define WINDBG_WINDOW_STILL_LOCKED 0x102a
|
|
#define WINDBG_UPDATEPS_ASSERTION_FAIL 0x102b
|
|
#define WINDBG_SENDMSG_WITHIN_USER_SEM 0x102c
|
|
#define WINDBG_USER_SEM_NOT_ENTERED 0x102d
|
|
#define WINDBG_PROC_NOT_EXPORTED 0x102e
|
|
#define WINDBG_BAD_SENDMSG_HWND 0x102f
|
|
#define WINDBG_ABNORMAL_EXIT 0x1030
|
|
#define WINDBG_INTERNAL_REVISION 0x1031
|
|
#define WINDBG_INITSYSTEM_FAILED 0x1032
|
|
#define WINDBG_HATOMTBL_NOT_DESTROYED 0x1033
|
|
#define WINDBG_WINDOW_UNLOCK_WAIT 0x1035
|
|
|
|
#endif /* INCL_WINERRORS */
|
|
|
|
|
|
#define WRECT RECTL
|
|
#define PWRECT PRECTL
|
|
|
|
#define WPOINT POINTL
|
|
#define PWPOINT PPOINTL
|
|
|
|
|
|
typedef LHANDLE HACCEL;
|
|
|
|
typedef LHANDLE HRGN;
|
|
typedef HRGN *PHRGN;
|
|
|
|
typedef VOID *MRESULT;
|
|
typedef MRESULT *PMRESULT;
|
|
|
|
typedef VOID *MPARAM;
|
|
typedef MPARAM *PMPARAM;
|
|
|
|
typedef LHANDLE HPOINTER;
|
|
|
|
typedef HMODULE HLIB;
|
|
typedef HLIB *PHLIB;
|
|
|
|
typedef LONG COLOR;
|
|
typedef COLOR *PCOLOR;
|
|
|
|
typedef LHANDLE HAB;
|
|
typedef HAB *PHAB;
|
|
|
|
typedef LHANDLE HPS;
|
|
typedef HPS *PHPS;
|
|
|
|
typedef LHANDLE HDC;
|
|
typedef HDC *PHDC;
|
|
|
|
typedef LHANDLE HWND;
|
|
typedef HWND *PHWND;
|
|
|
|
typedef LHANDLE HMQ;
|
|
|
|
typedef LHANDLE HPAL;
|
|
typedef HPAL *PHPAL;
|
|
|
|
typedef LHANDLE HBITMAP;
|
|
typedef HBITMAP *PHBITMAP;
|
|
|
|
typedef ULONG ERRORID;
|
|
typedef ERRORID *PERRORID;
|
|
|
|
typedef MRESULT FNWP (HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2);
|
|
typedef FNWP *PFNWP;
|
|
|
|
#define ERRORIDERROR(errid) (LOUSHORT (errid))
|
|
#define ERRORIDSEV(errid) (HIUSHORT (errid))
|
|
#define MAKEERRORID(sev,error) (ERRORID)(MAKEULONG ((error), (sev)))
|
|
|
|
typedef struct _POINTL
|
|
{
|
|
LONG x;
|
|
LONG y;
|
|
} POINTL;
|
|
typedef POINTL *PPOINTL;
|
|
|
|
typedef struct _POINTS
|
|
{
|
|
SHORT x;
|
|
SHORT y;
|
|
} POINTS;
|
|
typedef POINTS *PPOINTS;
|
|
|
|
typedef struct _RECTL
|
|
{
|
|
LONG xLeft;
|
|
LONG yBottom;
|
|
LONG xRight;
|
|
LONG yTop;
|
|
} RECTL;
|
|
typedef RECTL *PRECTL;
|
|
|
|
#if defined (INCL_WINMESSAGEMGR) || !defined (INCL_NOCOMMON)
|
|
|
|
#define WM_NULL 0x0000
|
|
#define WM_CREATE 0x0001
|
|
#define WM_DESTROY 0x0002
|
|
#define WM_ENABLE 0x0004
|
|
#define WM_SHOW 0x0005
|
|
#define WM_MOVE 0x0006
|
|
#define WM_SIZE 0x0007
|
|
#define WM_ADJUSTWINDOWPOS 0x0008
|
|
#define WM_CALCVALIDRECTS 0x0009
|
|
#define WM_SETWINDOWPARAMS 0x000a
|
|
#define WM_QUERYWINDOWPARAMS 0x000b
|
|
#define WM_HITTEST 0x000c
|
|
#define WM_ACTIVATE 0x000d
|
|
#define WM_SETFOCUS 0x000f
|
|
#define WM_SETSELECTION 0x0010
|
|
#define WM_PPAINT 0x0011
|
|
#define WM_PSETFOCUS 0x0012
|
|
#define WM_PSYSCOLORCHANGE 0x0013
|
|
#define WM_PSIZE 0x0014
|
|
#define WM_PACTIVATE 0x0015
|
|
#define WM_PCONTROL 0x0016
|
|
#define WM_COMMAND 0x0020
|
|
#define WM_SYSCOMMAND 0x0021
|
|
#define WM_HELP 0x0022
|
|
#define WM_PAINT 0x0023
|
|
#define WM_TIMER 0x0024
|
|
#define WM_SEM1 0x0025
|
|
#define WM_SEM2 0x0026
|
|
#define WM_SEM3 0x0027
|
|
#define WM_SEM4 0x0028
|
|
#define WM_CLOSE 0x0029
|
|
#define WM_QUIT 0x002a
|
|
#define WM_SYSCOLORCHANGE 0x002b
|
|
#define WM_SYSVALUECHANGED 0x002d
|
|
#define WM_APPTERMINATENOTIFY 0x002e
|
|
#define WM_PRESPARAMCHANGED 0x002f
|
|
#define WM_CONTROL 0x0030
|
|
#define WM_VSCROLL 0x0031
|
|
#define WM_HSCROLL 0x0032
|
|
#define WM_INITMENU 0x0033
|
|
#define WM_MENUSELECT 0x0034
|
|
#define WM_MENUEND 0x0035
|
|
#define WM_DRAWITEM 0x0036
|
|
#define WM_MEASUREITEM 0x0037
|
|
#define WM_CONTROLPOINTER 0x0038
|
|
#define WM_QUERYDLGCODE 0x003a
|
|
#define WM_INITDLG 0x003b
|
|
#define WM_SUBSTITUTESTRING 0x003c
|
|
#define WM_MATCHMNEMONIC 0x003d
|
|
#define WM_SAVEAPPLICATION 0x003e
|
|
|
|
#define WM_HELPBASE 0x0f00
|
|
#define WM_HELPTOP 0x0fff
|
|
|
|
#define WM_USER 0x1000
|
|
|
|
#define CMDSRC_OTHER 0
|
|
#define CMDSRC_PUSHBUTTON 1
|
|
#define CMDSRC_MENU 2
|
|
#define CMDSRC_ACCELERATOR 3
|
|
#define CMDSRC_FONTDLG 4
|
|
#define CMDSRC_FILEDLG 5
|
|
#define CMDSRC_PRINTDLG 6
|
|
#define CMDSRC_COLORDLG 7
|
|
|
|
#define PM_NOREMOVE 0x0000
|
|
#define PM_REMOVE 0x0001
|
|
|
|
#define RUM_IN 1
|
|
#define RUM_OUT 2
|
|
#define RUM_INOUT 3
|
|
|
|
#define SMD_DELAYED 0x0001
|
|
#define SMD_IMMEDIATE 0x0002
|
|
|
|
#define SSM_SYNCHRONOUS 0x0001
|
|
#define SSM_ASYNCHRONOUS 0x0002
|
|
#define SSM_MIXED 0x0003
|
|
|
|
#define WLI_NOBUTTONUP 0x0002
|
|
|
|
#if defined (INCL_WINTYPES)
|
|
|
|
#define DTYP_USER 16384
|
|
|
|
#define DTYP_CTL_ARRAY 1
|
|
#define DTYP_CTL_PARRAY (-1)
|
|
#define DTYP_CTL_OFFSET 2
|
|
#define DTYP_CTL_LENGTH 3
|
|
|
|
#define DTYP_ACCEL 28
|
|
#define DTYP_ACCELTABLE 29
|
|
#define DTYP_ARCPARAMS 38
|
|
#define DTYP_AREABUNDLE 139
|
|
#define DTYP_ATOM 90
|
|
#define DTYP_BITMAPINFO 60
|
|
#define DTYP_BITMAPINFOHEADER 61
|
|
#define DTYP_BITMAPINFO2 170
|
|
#define DTYP_BITMAPINFOHEADER2 171
|
|
#define DTYP_BIT16 20
|
|
#define DTYP_BIT32 21
|
|
#define DTYP_BIT8 19
|
|
#define DTYP_BOOL 18
|
|
#define DTYP_BTNCDATA 35
|
|
#define DTYP_BYTE 13
|
|
#define DTYP_CATCHBUF 141
|
|
#define DTYP_CHAR 15
|
|
#define DTYP_CHARBUNDLE 135
|
|
#define DTYP_CLASSINFO 95
|
|
#define DTYP_COUNT2 93
|
|
#define DTYP_COUNT2B 70
|
|
#define DTYP_COUNT2CH 82
|
|
#define DTYP_COUNT4 152
|
|
#define DTYP_COUNT4B 42
|
|
#define DTYP_CPID 57
|
|
#define DTYP_CREATESTRUCT 98
|
|
#define DTYP_CURSORINFO 34
|
|
#define DTYP_DEVOPENSTRUC 124
|
|
#define DTYP_DLGTEMPLATE 96
|
|
#define DTYP_DLGTITEM 97
|
|
#define DTYP_ENTRYFDATA 127
|
|
#define DTYP_ERRORID 45
|
|
#define DTYP_FATTRS 75
|
|
#define DTYP_FFDESCS 142
|
|
#define DTYP_FIXED 99
|
|
#define DTYP_FONTMETRICS 74
|
|
#define DTYP_FRAMECDATA 144
|
|
#define DTYP_GRADIENTL 48
|
|
#define DTYP_HAB 10
|
|
#define DTYP_HACCEL 30
|
|
#define DTYP_HAPP 146
|
|
#define DTYP_HATOMTBL 91
|
|
#define DTYP_HBITMAP 62
|
|
#define DTYP_HCINFO 46
|
|
#define DTYP_HDC 132
|
|
#define DTYP_HENUM 117
|
|
#define DTYP_HHEAP 109
|
|
#define DTYP_HINI 53
|
|
#define DTYP_HLIB 147
|
|
#define DTYP_HMF 85
|
|
#define DTYP_HMQ 86
|
|
#define DTYP_HPOINTER 106
|
|
#define DTYP_HPROGRAM 131
|
|
#define DTYP_HPS 12
|
|
#define DTYP_HRGN 116
|
|
#define DTYP_HSEM 140
|
|
#define DTYP_HSPL 32
|
|
#define DTYP_HSWITCH 66
|
|
#define DTYP_HVPS 58
|
|
#define DTYP_HWND 11
|
|
#define DTYP_IDENTITY 133
|
|
#define DTYP_IDENTITY4 169
|
|
#define DTYP_IMAGEBUNDLE 136
|
|
#define DTYP_INDEX2 81
|
|
#define DTYP_IPT 155
|
|
#define DTYP_KERNINGPAIRS 118
|
|
#define DTYP_LENGTH2 68
|
|
#define DTYP_LENGTH4 69
|
|
#define DTYP_LINEBUNDLE 137
|
|
#define DTYP_LONG 25
|
|
#define DTYP_MARKERBUNDLE 138
|
|
#define DTYP_MATRIXLF 113
|
|
#define DTYP_MLECTLDATA 161
|
|
#define DTYP_MLEMARGSTRUCT 157
|
|
#define DTYP_MLEOVERFLOW 158
|
|
#define DTYP_OFFSET2B 112
|
|
#define DTYP_OWNERITEM 154
|
|
#define DTYP_PID 92
|
|
#define DTYP_PIX 156
|
|
#define DTYP_POINTERINFO 105
|
|
#define DTYP_POINTL 77
|
|
#define DTYP_PROGCATEGORY 129
|
|
#define DTYP_PROGRAMENTRY 128
|
|
#define DTYP_PROGTYPE 130
|
|
#define DTYP_PROPERTY2 88
|
|
#define DTYP_PROPERTY4 89
|
|
#define DTYP_QMSG 87
|
|
#define DTYP_RECTL 121
|
|
#define DTYP_RESID 125
|
|
#define DTYP_RGB 111
|
|
#define DTYP_RGNRECT 115
|
|
#define DTYP_SBCDATA 159
|
|
#define DTYP_SEGOFF 126
|
|
#define DTYP_SHORT 23
|
|
#define DTYP_SIZEF 101
|
|
#define DTYP_SIZEL 102
|
|
#define DTYP_STRL 17
|
|
#define DTYP_STR16 40
|
|
#define DTYP_STR32 37
|
|
#define DTYP_STR64 47
|
|
#define DTYP_STR8 33
|
|
#define DTYP_SWBLOCK 63
|
|
#define DTYP_SWCNTRL 64
|
|
#define DTYP_SWENTRY 65
|
|
#define DTYP_SWP 31
|
|
#define DTYP_TID 104
|
|
#define DTYP_TIME 107
|
|
#define DTYP_TRACKINFO 73
|
|
#define DTYP_UCHAR 22
|
|
#define DTYP_ULONG 26
|
|
#define DTYP_USERBUTTON 36
|
|
#define DTYP_USHORT 24
|
|
#define DTYP_WIDTH4 108
|
|
#define DTYP_WNDPARAMS 83
|
|
#define DTYP_WNDPROC 84
|
|
#define DTYP_WPOINT 59
|
|
#define DTYP_WRECT 55
|
|
#define DTYP_XYWINSIZE 52
|
|
|
|
#define DTYP_PACCEL (-28)
|
|
#define DTYP_PACCELTABLE (-29)
|
|
#define DTYP_PARCPARAMS (-38)
|
|
#define DTYP_PAREABUNDLE (-139)
|
|
#define DTYP_PATOM (-90)
|
|
#define DTYP_PBITMAPINFO (-60)
|
|
#define DTYP_PBITMAPINFOHEADER (-61)
|
|
#define DTYP_PBITMAPINFO2 (-170)
|
|
#define DTYP_PBITMAPINFOHEADER2 (-171)
|
|
#define DTYP_PBIT16 (-20)
|
|
#define DTYP_PBIT32 (-21)
|
|
#define DTYP_PBIT8 (-19)
|
|
#define DTYP_PBOOL (-18)
|
|
#define DTYP_PBTNCDATA (-35)
|
|
#define DTYP_PBYTE (-13)
|
|
#define DTYP_PCATCHBUF (-141)
|
|
#define DTYP_PCHAR (-15)
|
|
#define DTYP_PCHARBUNDLE (-135)
|
|
#define DTYP_PCLASSINFO (-95)
|
|
#define DTYP_PCOUNT2 (-93)
|
|
#define DTYP_PCOUNT2B (-70)
|
|
#define DTYP_PCOUNT2CH (-82)
|
|
#define DTYP_PCOUNT4 (-152)
|
|
#define DTYP_PCOUNT4B (-42)
|
|
#define DTYP_PCPID (-57)
|
|
#define DTYP_PCREATESTRUCT (-98)
|
|
#define DTYP_PCURSORINFO (-34)
|
|
#define DTYP_PDEVOPENSTRUC (-124)
|
|
#define DTYP_PDLGTEMPLATE (-96)
|
|
#define DTYP_PDLGTITEM (-97)
|
|
#define DTYP_PENTRYFDATA (-127)
|
|
#define DTYP_PERRORID (-45)
|
|
#define DTYP_PFATTRS (-75)
|
|
#define DTYP_PFFDESCS (-142)
|
|
#define DTYP_PFIXED (-99)
|
|
#define DTYP_PFONTMETRICS (-74)
|
|
#define DTYP_PFRAMECDATA (-144)
|
|
#define DTYP_PGRADIENTL (-48)
|
|
#define DTYP_PHAB (-10)
|
|
#define DTYP_PHACCEL (-30)
|
|
#define DTYP_PHAPP (-146)
|
|
#define DTYP_PHATOMTBL (-91)
|
|
#define DTYP_PHBITMAP (-62)
|
|
#define DTYP_PHCINFO (-46)
|
|
#define DTYP_PHDC (-132)
|
|
#define DTYP_PHENUM (-117)
|
|
#define DTYP_PHHEAP (-109)
|
|
#define DTYP_PHINI (-53)
|
|
#define DTYP_PHLIB (-147)
|
|
#define DTYP_PHMF (-85)
|
|
#define DTYP_PHMQ (-86)
|
|
#define DTYP_PHPOINTER (-106)
|
|
#define DTYP_PHPROGRAM (-131)
|
|
#define DTYP_PHPS (-12)
|
|
#define DTYP_PHRGN (-116)
|
|
#define DTYP_PHSEM (-140)
|
|
#define DTYP_PHSPL (-32)
|
|
#define DTYP_PHSWITCH (-66)
|
|
#define DTYP_PHVPS (-58)
|
|
#define DTYP_PHWND (-11)
|
|
#define DTYP_PIDENTITY (-133)
|
|
#define DTYP_PIDENTITY4 (-169)
|
|
#define DTYP_PIMAGEBUNDLE (-136)
|
|
#define DTYP_PINDEX2 (-81)
|
|
#define DTYP_PIPT (-155)
|
|
#define DTYP_PKERNINGPAIRS (-118)
|
|
#define DTYP_PLENGTH2 (-68)
|
|
#define DTYP_PLENGTH4 (-69)
|
|
#define DTYP_PLINEBUNDLE (-137)
|
|
#define DTYP_PLONG (-25)
|
|
#define DTYP_PMARKERBUNDLE (-138)
|
|
#define DTYP_PMATRIXLF (-113)
|
|
#define DTYP_PMLECTLDATA (-161)
|
|
#define DTYP_PMLEMARGSTRUCT (-157)
|
|
#define DTYP_PMLEOVERFLOW (-158)
|
|
#define DTYP_POFFSET2B (-112)
|
|
#define DTYP_POWNERITEM (-154)
|
|
#define DTYP_PPID (-92)
|
|
#define DTYP_PPIX (-156)
|
|
#define DTYP_PPOINTERINFO (-105)
|
|
#define DTYP_PPOINTL (-77)
|
|
#define DTYP_PPROGCATEGORY (-129)
|
|
#define DTYP_PPROGRAMENTRY (-128)
|
|
#define DTYP_PPROGTYPE (-130)
|
|
#define DTYP_PPROPERTY2 (-88)
|
|
#define DTYP_PPROPERTY4 (-89)
|
|
#define DTYP_PQMSG (-87)
|
|
#define DTYP_PRECTL (-121)
|
|
#define DTYP_PRESID (-125)
|
|
#define DTYP_PRGB (-111)
|
|
#define DTYP_PRGNRECT (-115)
|
|
#define DTYP_PSBCDATA (-159)
|
|
#define DTYP_PSEGOFF (-126)
|
|
#define DTYP_PSHORT (-23)
|
|
#define DTYP_PSIZEF (-101)
|
|
#define DTYP_PSIZEL (-102)
|
|
#define DTYP_PSTRL (-17)
|
|
#define DTYP_PSTR16 (-40)
|
|
#define DTYP_PSTR32 (-37)
|
|
#define DTYP_PSTR64 (-47)
|
|
#define DTYP_PSTR8 (-33)
|
|
#define DTYP_PSWBLOCK (-63)
|
|
#define DTYP_PSWCNTRL (-64)
|
|
#define DTYP_PSWENTRY (-65)
|
|
#define DTYP_PSWP (-31)
|
|
#define DTYP_PTID (-104)
|
|
#define DTYP_PTIME (-107)
|
|
#define DTYP_PTRACKINFO (-73)
|
|
#define DTYP_PUCHAR (-22)
|
|
#define DTYP_PULONG (-26)
|
|
#define DTYP_PUSERBUTTON (-36)
|
|
#define DTYP_PUSHORT (-24)
|
|
#define DTYP_PWIDTH4 (-108)
|
|
#define DTYP_PWNDPARAMS (-83)
|
|
#define DTYP_PWNDPROC (-84)
|
|
#define DTYP_PWPOINT (-59)
|
|
#define DTYP_PWRECT (-55)
|
|
#define DTYP_PXYWINSIZE (-52)
|
|
|
|
#endif /* INCL_WINTYPES */
|
|
|
|
typedef struct _QMSG
|
|
{
|
|
HWND hwnd;
|
|
ULONG msg;
|
|
MPARAM mp1;
|
|
MPARAM mp2;
|
|
ULONG time;
|
|
POINTL ptl;
|
|
ULONG reserved;
|
|
} QMSG;
|
|
typedef QMSG *PQMSG;
|
|
|
|
typedef struct _COMMANDMSG
|
|
{
|
|
USHORT cmd;
|
|
USHORT unused;
|
|
USHORT source;
|
|
USHORT fMouse;
|
|
} CMDMSG;
|
|
typedef CMDMSG *PCMDMSG;
|
|
|
|
typedef struct _MQINFO
|
|
{
|
|
ULONG cb;
|
|
PID pid;
|
|
TID tid;
|
|
ULONG cmsgs;
|
|
PVOID pReserved;
|
|
} MQINFO;
|
|
typedef MQINFO *PMQINFO;
|
|
|
|
#define COMMANDMSG(pmsg) ((PCMDMSG)((PBYTE)pmsg + sizeof (ULONG)))
|
|
|
|
|
|
BOOL WinCancelShutdown (HMQ hmq, BOOL fCancelAlways);
|
|
HMQ WinCreateMsgQueue (HAB hab, LONG cmsg);
|
|
BOOL WinDestroyMsgQueue (HMQ hmq);
|
|
MRESULT WinDispatchMsg (HAB hab, PQMSG pqmsg);
|
|
BOOL WinGetMsg (HAB hab, PQMSG pqmsg, HWND hwndFilter, ULONG msgFilterFirst,
|
|
ULONG msgFilterLast);
|
|
BOOL WinLockInput (HMQ hmq, ULONG fLock);
|
|
BOOL WinPeekMsg (HAB hab, PQMSG pqmsg, HWND hwndFilter, ULONG msgFilterFirst,
|
|
ULONG msgFilterLast, ULONG fl);
|
|
BOOL WinPostMsg (HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2);
|
|
HMQ WinQueueFromID (HAB hab, PID pid, TID tid);
|
|
BOOL WinQueryQueueInfo (HMQ hmq, PMQINFO pmqi, ULONG cbCopy);
|
|
HMQ WinQuerySendMsg (HAB hab, HMQ hmqSender, HMQ hmqReceiver, PQMSG pqmsg);
|
|
BOOL WinRegisterUserDatatype (HAB hab, LONG datatype, LONG count, PLONG types);
|
|
BOOL WinRegisterUserMsg (HAB hab, ULONG msgid, LONG datatype1, LONG dir1,
|
|
LONG datatype2, LONG dir2, LONG datatyper);
|
|
BOOL WinReplyMsg (HAB hab, HMQ hmqSender, HMQ hmqReceiver, MRESULT mresult);
|
|
MRESULT WinSendMsg (HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2);
|
|
BOOL WinSetMsgMode (HAB hab, PCSZ classname, LONG control);
|
|
BOOL WinSetSynchroMode (HAB hab, LONG mode);
|
|
BOOL WinThreadAssocQueue (HAB hab, HMQ hmq);
|
|
BOOL WinWakeThread (HMQ hmq);
|
|
|
|
#endif /* INCL_WINMESSAGEMGR || !INCL_NOCOMMON */
|
|
|
|
typedef struct _SWP
|
|
{
|
|
ULONG fl;
|
|
LONG cy;
|
|
LONG cx;
|
|
LONG y;
|
|
LONG x;
|
|
HWND hwndInsertBehind;
|
|
HWND hwnd;
|
|
ULONG ulReserved1;
|
|
ULONG ulReserved2;
|
|
} SWP;
|
|
typedef SWP *PSWP;
|
|
|
|
typedef struct _ICONINFO
|
|
{
|
|
ULONG cb;
|
|
ULONG fFormat;
|
|
PSZ pszFileName;
|
|
HMODULE hmod;
|
|
ULONG resid;
|
|
ULONG cbIconData;
|
|
PVOID pIconData;
|
|
} ICONINFO;
|
|
typedef ICONINFO *PICONINFO;
|
|
|
|
|
|
#define MPVOID ((MPARAM)0)
|
|
|
|
#define MPFROMP(x) ((MPARAM)((ULONG)(x)))
|
|
#define MPFROMHWND(x) ((MPARAM)(HWND)(x))
|
|
#define MPFROMCHAR(x) ((MPARAM)(ULONG)(USHORT)(x))
|
|
#define MPFROMSHORT(x) ((MPARAM)(ULONG)(USHORT)(x))
|
|
#define MPFROM2SHORT(x1,x2) ((MPARAM)MAKELONG (x1, x2))
|
|
#define MPFROMSH2CH(s,c1,c2) ((MPARAM)MAKELONG (s, MAKESHORT (c1, c2)))
|
|
#define MPFROMLONG(x) ((MPARAM)(ULONG)(x))
|
|
|
|
#define PVOIDFROMMP(mp) ((PVOID)(mp))
|
|
#define HWNDFROMMP(mp) ((HWND)(mp))
|
|
#define CHAR1FROMMP(mp) ((UCHAR)(ULONG)(mp))
|
|
#define CHAR2FROMMP(mp) ((UCHAR)((ULONG)mp >> 8))
|
|
#define CHAR3FROMMP(mp) ((UCHAR)((ULONG)mp >> 16))
|
|
#define CHAR4FROMMP(mp) ((UCHAR)((ULONG)mp >> 24))
|
|
#define SHORT1FROMMP(mp) ((USHORT)(ULONG)(mp))
|
|
#define SHORT2FROMMP(mp) ((USHORT)((ULONG)mp >> 16))
|
|
#define LONGFROMMP(mp) ((ULONG)(mp))
|
|
|
|
#define MRFROMP(x) ((MRESULT)(PVOID)(x))
|
|
#define MRFROMSHORT(x) ((MRESULT)(ULONG)(USHORT)(x))
|
|
#define MRFROM2SHORT(x1,x2) ((MRESULT)MAKELONG (x1, x2))
|
|
#define MRFROMLONG(x) ((MRESULT)(ULONG)(x))
|
|
|
|
#define PVOIDFROMMR(mr) ((VOID *)(mr))
|
|
#define SHORT1FROMMR(mr) ((USHORT)((ULONG)mr))
|
|
#define SHORT2FROMMR(mr) ((USHORT)((ULONG)mr >> 16))
|
|
#define LONGFROMMR(mr) ((ULONG)(mr))
|
|
|
|
|
|
HWND WinCreateWindow (HWND hwndParent, PCSZ pszClass, PCSZ pszName,
|
|
ULONG flStyle, LONG x, LONG y, LONG cx, LONG cy, HWND hwndOwner,
|
|
HWND hwndInsertBehind, ULONG id, PVOID pCtlData, PVOID pPresParams);
|
|
BOOL WinDrawBitmap (HPS hpsDst, HBITMAP hbm, __const__ RECTL *pwrcSrc,
|
|
__const__ POINTL *pptlDst, LONG clrFore, LONG clrBack, ULONG fl);
|
|
BOOL WinDrawBorder (HPS hps, __const__ RECTL *prcl, LONG cx, LONG cy,
|
|
LONG clrFore, LONG clrBack, ULONG flCmd);
|
|
LONG WinDrawText (HPS hps, LONG cchText, PCCH lpchText, PRECTL prcl,
|
|
LONG clrFore, LONG clrBack, ULONG flCmd);
|
|
BOOL WinEnableWindow (HWND hwnd, BOOL fEnable);
|
|
BOOL WinEnableWindowUpdate (HWND hwnd, BOOL fEnable);
|
|
BOOL WinInvalidateRect (HWND hwnd, __const__ RECTL *prcl,
|
|
BOOL fIncludeChildren);
|
|
BOOL WinInvalidateRegion (HWND hwnd, HRGN hrgn, BOOL fIncludeChildren);
|
|
BOOL WinInvertRect (HPS hps, __const__ RECTL *prcl);
|
|
BOOL WinIsChild (HWND hwnd, HWND hwndParent);
|
|
BOOL WinIsWindow (HAB hab, HWND hwnd);
|
|
BOOL WinIsWindowEnabled (HWND hwnd);
|
|
BOOL WinIsWindowVisible (HWND hwnd);
|
|
LONG WinLoadMessage (HAB hab, HMODULE hmod, ULONG id, LONG cchMax,
|
|
PSZ pchBuffer);
|
|
LONG WinLoadString (HAB hab, HMODULE hmod, ULONG id, LONG cchMax,
|
|
PSZ pchBuffer);
|
|
LONG WinMultWindowFromIDs (HWND hwndParent, PHWND prghwnd, ULONG idFirst,
|
|
ULONG idLast);
|
|
HWND WinQueryDesktopWindow (HAB hab, HDC hdc);
|
|
HWND WinQueryObjectWindow (HWND hwndDesktop);
|
|
HPOINTER WinQueryPointer (HWND hwndDesktop);
|
|
HWND WinQueryWindow (HWND hwnd, LONG cmd);
|
|
BOOL WinQueryWindowPos (HWND hwnd, PSWP pswp);
|
|
BOOL WinQueryWindowProcess (HWND hwnd, PPID ppid, PTID ptid);
|
|
LONG WinQueryWindowText (HWND hwnd, LONG cchBufferMax, PCH pchBuffer);
|
|
LONG WinQueryWindowTextLength (HWND hwnd);
|
|
BOOL WinSetMultWindowPos (HAB hab, __const__ SWP *pswp, ULONG cswp);
|
|
BOOL WinSetOwner (HWND hwnd, HWND hwndNewOwner);
|
|
BOOL WinSetParent (HWND hwnd, HWND hwndNewParent, BOOL fRedraw);
|
|
BOOL WinSetWindowPos (HWND hwnd, HWND hwndInsertBehind, LONG x, LONG y,
|
|
LONG cx, LONG cy, ULONG fl);
|
|
BOOL WinSetWindowText (HWND hwnd, PCSZ pszText);
|
|
BOOL WinUpdateWindow (HWND hwnd);
|
|
HWND WinWindowFromID (HWND hwndParent, ULONG id);
|
|
|
|
|
|
#if defined (INCL_WINFRAMEMGR) || !defined (INCL_NOCOMMON)
|
|
|
|
#define FCF_TITLEBAR 0x00000001
|
|
#define FCF_SYSMENU 0x00000002
|
|
#define FCF_MENU 0x00000004
|
|
#define FCF_SIZEBORDER 0x00000008
|
|
#define FCF_MINBUTTON 0x00000010
|
|
#define FCF_MAXBUTTON 0x00000020
|
|
#define FCF_MINMAX (FCF_MINBUTTON|FCF_MAXBUTTON)
|
|
#define FCF_VERTSCROLL 0x00000040
|
|
#define FCF_HORZSCROLL 0x00000080
|
|
#define FCF_DLGBORDER 0x00000100
|
|
#define FCF_BORDER 0x00000200
|
|
#define FCF_SHELLPOSITION 0x00000400
|
|
#define FCF_TASKLIST 0x00000800
|
|
#define FCF_NOBYTEALIGN 0x00001000
|
|
#define FCF_NOMOVEWITHOWNER 0x00002000
|
|
#define FCF_ICON 0x00004000
|
|
#define FCF_ACCELTABLE 0x00008000
|
|
#define FCF_SYSMODAL 0x00010000
|
|
#define FCF_SCREENALIGN 0x00020000
|
|
#define FCF_MOUSEALIGN 0x00040000
|
|
#define FCF_PALETTE_NORMAL 0x00080000
|
|
#define FCF_PALETTE_HELP 0x00100000
|
|
#define FCF_PALETTE_POPUPODD 0x00200000
|
|
#define FCF_PALETTE_POPUPEVEN 0x00400000
|
|
#define FCF_HIDEBUTTON 0x01000000
|
|
#define FCF_HIDEMAX 0x01000020
|
|
#define FCF_AUTOICON 0x40000000
|
|
#if defined (INCL_NLS)
|
|
#define FCF_DBE_APPSTAT 0x80000000
|
|
#endif /* INCL_NLS */
|
|
|
|
#define FCF_STANDARD 0x0000cc3f
|
|
|
|
#define FF_FLASHWINDOW 0x0001
|
|
#define FF_ACTIVE 0x0002
|
|
#define FF_FLASHHILITE 0x0004
|
|
#define FF_OWNERHIDDEN 0x0008
|
|
#define FF_DLGDISMISSED 0x0010
|
|
#define FF_OWNERDISABLED 0x0020
|
|
#define FF_SELECTED 0x0040
|
|
#define FF_NOACTIVATESWP 0x0080
|
|
#define FF_DIALOGBOX 0x0100
|
|
|
|
#define FS_ICON 0x00000001
|
|
#define FS_ACCELTABLE 0x00000002
|
|
#define FS_SHELLPOSITION 0x00000004
|
|
#define FS_TASKLIST 0x00000008
|
|
#define FS_NOBYTEALIGN 0x00000010
|
|
#define FS_NOMOVEWITHOWNER 0x00000020
|
|
#define FS_SYSMODAL 0x00000040
|
|
#define FS_DLGBORDER 0x00000080
|
|
#define FS_BORDER 0x00000100
|
|
#define FS_SCREENALIGN 0x00000200
|
|
#define FS_MOUSEALIGN 0x00000400
|
|
#define FS_SIZEBORDER 0x00000800
|
|
#define FS_AUTOICON 0x00001000
|
|
#if defined (INCL_NLS)
|
|
#define FS_DBE_APPSTAT 0x00008000
|
|
#endif /* INCL_NLS */
|
|
|
|
#define FS_STANDARD 0x0000000f
|
|
|
|
typedef struct _FRAMECDATA
|
|
{
|
|
USHORT cb;
|
|
ULONG flCreateFlags;
|
|
USHORT hmodResources;
|
|
USHORT idResources;
|
|
} FRAMECDATA;
|
|
typedef FRAMECDATA *PFRAMECDATA;
|
|
|
|
HWND WinCreateStdWindow (HWND hwndParent, ULONG flStyle,
|
|
PULONG pflCreateFlags, PCSZ pszClientClass, PCSZ pszTitle,
|
|
ULONG styleClient, HMODULE hmod, ULONG idResources, PHWND phwndClient);
|
|
|
|
#endif /* INCL_WINFRAMEMGR || !INCL_NOCOMMON */
|
|
|
|
#if defined (INCL_WINFRAMEMGR)
|
|
|
|
#define WM_FLASHWINDOW 0x0040
|
|
#define WM_FORMATFRAME 0x0041
|
|
#define WM_UPDATEFRAME 0x0042
|
|
#define WM_FOCUSCHANGE 0x0043
|
|
#define WM_SETBORDERSIZE 0x0044
|
|
#define WM_TRACKFRAME 0x0045
|
|
#define WM_MINMAXFRAME 0x0046
|
|
#define WM_SETICON 0x0047
|
|
#define WM_QUERYICON 0x0048
|
|
#define WM_SETACCELTABLE 0x0049
|
|
#define WM_QUERYACCELTABLE 0x004a
|
|
#define WM_TRANSLATEACCEL 0x004b
|
|
#define WM_QUERYTRACKINFO 0x004c
|
|
#define WM_QUERYBORDERSIZE 0x004d
|
|
#define WM_NEXTMENU 0x004e
|
|
#define WM_ERASEBACKGROUND 0x004f
|
|
#define WM_QUERYFRAMEINFO 0x0050
|
|
#define WM_QUERYFOCUSCHAIN 0x0051
|
|
#define WM_OWNERPOSCHANGE 0x0052
|
|
#define WM_CALCFRAMERECT 0x0053
|
|
#define WM_WINDOWPOSCHANGED 0x0055
|
|
#define WM_ADJUSTFRAMEPOS 0x0056
|
|
#define WM_QUERYFRAMECTLCOUNT 0x0059
|
|
#define WM_QUERYHELPINFO 0x005b
|
|
#define WM_SETHELPINFO 0x005c
|
|
#define WM_ERROR 0x005d
|
|
#define WM_REALIZEPALETTE 0x005e
|
|
|
|
#define FI_FRAME 0x00000001
|
|
#define FI_OWNERHIDE 0x00000002
|
|
#define FI_ACTIVATEOK 0x00000004
|
|
#define FI_NOMOVEWITHOWNER 0x00000008
|
|
|
|
#define FID_SYSMENU 0x8002
|
|
#define FID_TITLEBAR 0x8003
|
|
#define FID_MINMAX 0x8004
|
|
#define FID_MENU 0x8005
|
|
#define FID_VERTSCROLL 0x8006
|
|
#define FID_HORZSCROLL 0x8007
|
|
#define FID_CLIENT 0x8008
|
|
#define FID_DBE_APPSTAT 0x8010
|
|
#define FID_DBE_KBDSTAT 0x8011
|
|
#define FID_DBE_PECIC 0x8012
|
|
#define FID_DBE_KKPOPUP 0x8013
|
|
|
|
#define SC_SIZE 0x8000
|
|
#define SC_MOVE 0x8001
|
|
#define SC_MINIMIZE 0x8002
|
|
#define SC_MAXIMIZE 0x8003
|
|
#define SC_CLOSE 0x8004
|
|
#define SC_NEXT 0x8005
|
|
#define SC_APPMENU 0x8006
|
|
#define SC_SYSMENU 0x8007
|
|
#define SC_RESTORE 0x8008
|
|
#define SC_NEXTFRAME 0x8009
|
|
#define SC_NEXTWINDOW 0x8010
|
|
#define SC_TASKMANAGER 0x8011
|
|
#define SC_HELPKEYS 0x8012
|
|
#define SC_HELPINDEX 0x8013
|
|
#define SC_HELPEXTENDED 0x8014
|
|
#define SC_SWITCHPANELIDS 0x8015
|
|
#define SC_DBE_FIRST 0x8018
|
|
#define SC_DBE_LAST 0x801f
|
|
#define SC_BEGINDRAG 0x8020
|
|
#define SC_ENDDRAG 0x8021
|
|
#define SC_SELECT 0x8022
|
|
#define SC_OPEN 0x8023
|
|
#define SC_CONTEXTMENU 0x8024
|
|
#define SC_CONTEXTHELP 0x8025
|
|
#define SC_TEXTEDIT 0x8026
|
|
#define SC_BEGINSELECT 0x8027
|
|
#define SC_ENDSELECT 0x8028
|
|
#define SC_WINDOW 0x8029
|
|
#define SC_HIDE 0x802a
|
|
|
|
typedef LHANDLE HSAVEWP;
|
|
|
|
BOOL WinCalcFrameRect (HWND hwndFrame, PRECTL prcl, BOOL fClient);
|
|
BOOL WinCreateFrameControls (HWND hwndFrame, PFRAMECDATA pfcdata,
|
|
PCSZ pszTitle);
|
|
BOOL WinFlashWindow (HWND hwndFrame, BOOL fFlash);
|
|
BOOL WinGetMaxPosition (HWND hwnd, PSWP pswp);
|
|
BOOL WinGetMinPosition (HWND hwnd, PSWP pswp, __const__ POINTL *pptl);
|
|
BOOL WinSaveWindowPos (HSAVEWP hsvwp, PSWP pswp, ULONG cswp);
|
|
|
|
#endif /* INCL_WINFRAMEMGR */
|
|
|
|
|
|
#if defined (INCL_WINWINDOWMGR) || !defined (INCL_NOCOMMON)
|
|
|
|
#define PSF_LOCKWINDOWUPDATE 0x0001
|
|
#define PSF_CLIPUPWARDS 0x0002
|
|
#define PSF_CLIPDOWNWARDS 0x0004
|
|
#define PSF_CLIPSIBLINGS 0x0008
|
|
#define PSF_CLIPCHILDREN 0x0010
|
|
#define PSF_PARENTCLIP 0x0020
|
|
|
|
#define QV_OS2 0x0000
|
|
#define QV_CMS 0x0001
|
|
#define QV_TSO 0x0002
|
|
#define QV_TSOBATCH 0x0003
|
|
#define QV_OS400 0x0004
|
|
|
|
#define SW_SCROLLCHILDREN 0x0001
|
|
#define SW_INVALIDATERGN 0x0002
|
|
|
|
|
|
typedef struct _QVERSDATA
|
|
{
|
|
USHORT environment;
|
|
USHORT version;
|
|
} QVERSDATA;
|
|
typedef QVERSDATA *PQVERSDATA;
|
|
|
|
|
|
HPS WinBeginPaint (HWND hwnd, HPS hps, PRECTL prclPaint);
|
|
MRESULT WinDefWindowProc (HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2);
|
|
BOOL WinDestroyWindow (HWND hwnd);
|
|
BOOL WinEndPaint (HPS hps);
|
|
BOOL WinFillRect (HPS hps, __const__ RECTL *prcl, LONG lColor);
|
|
HPS WinGetClipPS (HWND hwnd, HWND hwndClip, ULONG fl);
|
|
HPS WinGetPS (HWND hwnd);
|
|
HAB WinInitialize (ULONG fsOptions);
|
|
BOOL WinIsWindowShowing (HWND hwnd);
|
|
HDC WinOpenWindowDC (HWND hwnd);
|
|
HAB WinQueryAnchorBlock (HWND hwnd);
|
|
ULONG WinQueryVersion (HAB hab);
|
|
BOOL WinQueryWindowRect (HWND hwnd, PRECTL prclDest);
|
|
BOOL WinRegisterClass (HAB hab, PCSZ pszClassName, PFNWP pfnWndProc,
|
|
ULONG flStyle, ULONG cbWindowData);
|
|
BOOL WinReleasePS (HPS hps);
|
|
LONG WinScrollWindow (HWND hwnd, LONG dx, LONG dy, __const__ RECTL *prclScroll,
|
|
__const__ RECTL *prclClip, HRGN hrgnUpdate, PRECTL prclUpdate,
|
|
ULONG rgfsw);
|
|
BOOL WinSetActiveWindow (HWND hwndDesktop, HWND hwnd);
|
|
BOOL WinShowWindow (HWND hwnd, BOOL fShow);
|
|
BOOL WinTerminate (HAB hab);
|
|
|
|
#endif /* INCL_WINWINDOWMGR || !INCL_NOCOMMON */
|
|
|
|
#if defined (INCL_WINWINDOWMGR)
|
|
|
|
#define WM_QUERYCONVERTPOS 0x00b0
|
|
|
|
#define QCP_CONVERT 0x0001
|
|
#define QCP_NOCONVERT 0x0000
|
|
|
|
#define QWS_USER 0
|
|
#define QWS_ID (-1)
|
|
#define QWS_MIN (-1)
|
|
|
|
#define QWL_USER 0
|
|
#define QWL_STYLE (-2)
|
|
#define QWP_PFNWP (-3)
|
|
#define QWL_HMQ (-4)
|
|
#define QWL_RESERVED (-5)
|
|
#define QWL_PENDATA (-7)
|
|
#define QWL_BD_ATTR (-9)
|
|
#define QWL_BD_STAT (-10)
|
|
#define QWL_KBDLAYER (-11)
|
|
#define QWL_MIN (-11)
|
|
|
|
#define QWL_HHEAP 0x0004
|
|
#define QWL_HWNDFOCUSSAVE 0x0018
|
|
#define QWL_DEFBUTTON 0x0040
|
|
#define QWL_PSSCBLK 0x0048
|
|
#define QWL_PFEPBLK 0x004c
|
|
#define QWL_PSTATBLK 0x0050
|
|
|
|
#define QWS_FLAGS 0x0008
|
|
#define QWS_RESULT 0x000a
|
|
#define QWS_XRESTORE 0x000c
|
|
#define QWS_YRESTORE 0x000e
|
|
#define QWS_CXRESTORE 0x0010
|
|
#define QWS_CYRESTORE 0x0012
|
|
#define QWS_XMINIMIZE 0x0014
|
|
#define QWS_YMINIMIZE 0x0016
|
|
|
|
|
|
typedef struct _CLASSINFO
|
|
{
|
|
ULONG flClassStyle;
|
|
PFNWP pfnWindowProc;
|
|
ULONG cbWindowData;
|
|
} CLASSINFO;
|
|
typedef CLASSINFO *PCLASSINFO;
|
|
|
|
typedef struct _CREATESTRUCT
|
|
{
|
|
PVOID pPresParams;
|
|
PVOID pCtlData;
|
|
ULONG id;
|
|
HWND hwndInsertBehind;
|
|
HWND hwndOwner;
|
|
LONG cy;
|
|
LONG cx;
|
|
LONG y;
|
|
LONG x;
|
|
ULONG flStyle;
|
|
PSZ pszText;
|
|
PSZ pszClass;
|
|
HWND hwndParent;
|
|
} CREATESTRUCT;
|
|
typedef CREATESTRUCT *PCREATESTRUCT;
|
|
|
|
typedef LHANDLE HENUM;
|
|
|
|
|
|
HENUM WinBeginEnumWindows (HWND hwnd);
|
|
BOOL WinEndEnumWindows (HENUM henum);
|
|
LONG WinExcludeUpdateRegion (HPS hps, HWND hwnd);
|
|
HWND WinGetNextWindow (HENUM henum);
|
|
HPS WinGetScreenPS (HWND hwndDesktop);
|
|
BOOL WinIsThreadActive (HAB hab);
|
|
BOOL WinLockVisRegions (HWND hwndDesktop, BOOL fLock);
|
|
BOOL WinLockWindowUpdate (HWND hwndDesktop, HWND hwndLockUpdate);
|
|
BOOL WinMapWindowPoints (HWND hwndFrom, HWND hwndTo, PPOINTL prgptl,
|
|
LONG cwpt);
|
|
HWND WinQueryActiveWindow (HWND hwndDesktop);
|
|
BOOL WinQueryClassInfo (HAB hab, PCSZ pszClassName, PCLASSINFO pClassInfo);
|
|
LONG WinQueryClassName (HWND hwnd, LONG cchMax, PCH pch);
|
|
BOOL WinQueryUpdateRect (HWND hwnd, PRECTL prcl);
|
|
LONG WinQueryUpdateRegion (HWND hwnd, HRGN hrgn);
|
|
HWND WinQuerySysModalWindow (HWND hwndDesktop);
|
|
HDC WinQueryWindowDC (HWND hwnd);
|
|
PVOID WinQueryWindowPtr (HWND hwnd, LONG index);
|
|
ULONG WinQueryWindowULong (HWND hwnd, LONG index);
|
|
USHORT WinQueryWindowUShort (HWND hwnd, LONG index);
|
|
BOOL WinSetSysModalWindow (HWND hwndDesktop, HWND hwnd);
|
|
BOOL WinSetWindowBits (HWND hwnd, LONG index, ULONG flData, ULONG flMask);
|
|
BOOL WinSetWindowPtr (HWND hwnd, LONG index, PVOID p);
|
|
BOOL WinSetWindowULong (HWND hwnd, LONG index, ULONG ul);
|
|
BOOL WinSetWindowUShort (HWND hwnd, LONG index, USHORT us);
|
|
PFNWP WinSubclassWindow (HWND hwnd, PFNWP pfnwp);
|
|
BOOL WinValidateRect (HWND hwnd, __const__ RECTL *prcl, BOOL fIncludeChildren);
|
|
BOOL WinValidateRegion (HWND hwnd, HRGN hrgn, BOOL fIncludeChildren);
|
|
HWND WinWindowFromDC (HDC hdc);
|
|
HWND WinWindowFromPoint (HWND hwnd, __const__ POINTL *pptl, BOOL fChildren);
|
|
|
|
#endif /* INCL_WINWINDOWMGR */
|
|
|
|
|
|
#if defined (INCL_WINACCELERATORS)
|
|
|
|
#define AF_CHAR 0x0001
|
|
#define AF_VIRTUALKEY 0x0002
|
|
#define AF_SCANCODE 0x0004
|
|
#define AF_SHIFT 0x0008
|
|
#define AF_CONTROL 0x0010
|
|
#define AF_ALT 0x0020
|
|
#define AF_LONEKEY 0x0040
|
|
#define AF_SYSCOMMAND 0x0100
|
|
#define AF_HELP 0x0200
|
|
|
|
typedef struct _ACCEL
|
|
{
|
|
USHORT fs;
|
|
USHORT key;
|
|
USHORT cmd;
|
|
} ACCEL;
|
|
typedef ACCEL *PACCEL;
|
|
|
|
typedef struct _ACCELTABLE
|
|
{
|
|
USHORT cAccel;
|
|
USHORT codepage;
|
|
ACCEL aaccel[1];
|
|
} ACCELTABLE;
|
|
typedef ACCELTABLE *PACCELTABLE;
|
|
|
|
ULONG WinCopyAccelTable (HACCEL haccel, PACCELTABLE pAccelTable,
|
|
ULONG cbCopyMax);
|
|
HACCEL WinCreateAccelTable (HAB hab, PACCELTABLE pAccelTable);
|
|
BOOL WinDestroyAccelTable (HACCEL haccel);
|
|
HACCEL WinLoadAccelTable (HAB hab, HMODULE hmod, ULONG idAccelTable);
|
|
HACCEL WinQueryAccelTable (HAB hab, HWND hwndFrame);
|
|
BOOL WinSetAccelTable (HAB hab, HACCEL haccel, HWND hwndFrame);
|
|
BOOL WinTranslateAccel (HAB hab, HWND hwnd, HACCEL haccel, PQMSG pqmsg);
|
|
|
|
#endif /* INCL_WINACCELERATORS */
|
|
|
|
|
|
#if defined (INCL_WINATOM)
|
|
|
|
typedef LHANDLE HATOMTBL;
|
|
typedef ULONG ATOM;
|
|
|
|
#define MAKEINTATOM(x) ((PCH)MAKEULONG (x, 0xffff))
|
|
|
|
ATOM WinAddAtom (HATOMTBL hAtomTbl, PCSZ pszAtomName);
|
|
HATOMTBL WinCreateAtomTable (ULONG cbInitial, ULONG cBuckets);
|
|
ATOM WinDeleteAtom (HATOMTBL hAtomTbl, ATOM atom);
|
|
HATOMTBL WinDestroyAtomTable (HATOMTBL hAtomTbl);
|
|
ATOM WinFindAtom (HATOMTBL hAtomTbl, PCSZ pszAtomName);
|
|
ULONG WinQueryAtomLength (HATOMTBL hAtomTbl, ATOM atom);
|
|
ULONG WinQueryAtomName (HATOMTBL hAtomTbl, ATOM atom, PSZ pchBuffer,
|
|
ULONG cchBufferMax);
|
|
ULONG WinQueryAtomUsage (HATOMTBL hAtomTbl, ATOM atom);
|
|
HATOMTBL WinQuerySystemAtomTable (VOID);
|
|
|
|
#endif /* INCL_WINATOM */
|
|
|
|
|
|
#if defined (INCL_WINBUTTONS)
|
|
|
|
#define BDS_HILITED 0x0100
|
|
#define BDS_DISABLED 0x0200
|
|
#define BDS_DEFAULT 0x0400
|
|
|
|
#define BM_CLICK 0x0120
|
|
#define BM_QUERYCHECKINDEX 0x0121
|
|
#define BM_QUERYHILITE 0x0122
|
|
#define BM_SETHILITE 0x0123
|
|
#define BM_QUERYCHECK 0x0124
|
|
#define BM_SETCHECK 0x0125
|
|
#define BM_SETDEFAULT 0x0126
|
|
|
|
#define BN_CLICKED 1
|
|
#define BN_DBLCLICKED 2
|
|
#define BN_PAINT 3
|
|
|
|
#define BS_PUSHBUTTON 0
|
|
#define BS_CHECKBOX 1
|
|
#define BS_AUTOCHECKBOX 2
|
|
#define BS_RADIOBUTTON 3
|
|
#define BS_AUTORADIOBUTTON 4
|
|
#define BS_3STATE 5
|
|
#define BS_AUTO3STATE 6
|
|
#define BS_USERBUTTON 7
|
|
|
|
#define BS_PRIMARYSTYLES 0x000f
|
|
#define BS_TEXT 0x0010
|
|
#define BS_MINIICON 0x0020
|
|
#define BS_BITMAP 0x0040
|
|
#define BS_ICON 0x0080
|
|
#define BS_HELP 0x0100
|
|
#define BS_SYSCOMMAND 0x0200
|
|
#define BS_DEFAULT 0x0400
|
|
#define BS_NOPOINTERFOCUS 0x0800
|
|
#define BS_NOBORDER 0x1000
|
|
#define BS_NOCURSORSELECT 0x2000
|
|
#define BS_AUTOSIZE 0x4000
|
|
|
|
typedef struct _BTNCDATA
|
|
{
|
|
USHORT cb;
|
|
USHORT fsCheckState;
|
|
USHORT fsHiliteState;
|
|
LHANDLE hImage;
|
|
} BTNCDATA;
|
|
typedef BTNCDATA *PBTNCDATA;
|
|
|
|
typedef struct _USERBUTTON
|
|
{
|
|
HWND hwnd;
|
|
HPS hps;
|
|
ULONG fsState;
|
|
ULONG fsStateOld;
|
|
} USERBUTTON;
|
|
typedef USERBUTTON *PUSERBUTTON;
|
|
|
|
|
|
#endif /* INCL_WINBUTTONS */
|
|
|
|
|
|
#if defined (INCL_WINCLIPBOARD) || defined (INCL_WINDDE)
|
|
|
|
#define WM_RENDERFMT 0x0060
|
|
#define WM_RENDERALLFMTS 0x0061
|
|
#define WM_DESTROYCLIPBOARD 0x0062
|
|
#define WM_PAINTCLIPBOARD 0x0063
|
|
#define WM_SIZECLIPBOARD 0x0064
|
|
#define WM_HSCROLLCLIPBOARD 0x0065
|
|
#define WM_VSCROLLCLIPBOARD 0x0066
|
|
#define WM_DRAWCLIPBOARD 0x0067
|
|
|
|
#define CF_TEXT 1
|
|
#define CF_BITMAP 2
|
|
#define CF_DSPTEXT 3
|
|
#define CF_DSPBITMAP 4
|
|
#define CF_METAFILE 5
|
|
#define CF_DSPMETAFILE 6
|
|
#define CF_PALETTE 9
|
|
#define CF_MMPMFIRST 10
|
|
#define CF_MMPMLAST 19
|
|
|
|
#define SZFMT_TEXT "#1"
|
|
#define SZFMT_BITMAP "#2"
|
|
#define SZFMT_DSPTEXT "#3"
|
|
#define SZFMT_DSPBITMAP "#4"
|
|
#define SZFMT_METAFILE "#5"
|
|
#define SZFMT_DSPMETAFILE "#6"
|
|
#define SZFMT_PALETTE "#9"
|
|
#define SZFMT_SYLK "Sylk"
|
|
#define SZFMT_DIF "Dif"
|
|
#define SZFMT_TIFF "Tiff"
|
|
#define SZFMT_OEMTEXT "OemText"
|
|
#define SZFMT_DIB "Dib"
|
|
#define SZFMT_OWNERDISPLAY "OwnerDisplay"
|
|
#define SZFMT_LINK "Link"
|
|
#define SZFMT_METAFILEPICT "MetaFilePict"
|
|
#define SZFMT_DSPMETAFILEPICT "DspMetaFilePict"
|
|
#define SZFMT_CPTEXT "Codepage Text"
|
|
|
|
typedef struct _CPTEXT
|
|
{
|
|
USHORT idCountry;
|
|
USHORT usCodepage;
|
|
USHORT usLangID;
|
|
USHORT usSubLangID;
|
|
BYTE abText[1];
|
|
} CPTEXT;
|
|
typedef CPTEXT *PCPTEXT;
|
|
|
|
typedef struct _MFP
|
|
{
|
|
POINTL sizeBounds;
|
|
POINTL sizeMM;
|
|
ULONG cbLength;
|
|
USHORT mapMode;
|
|
USHORT reserved;
|
|
BYTE abData[1];
|
|
} MFP;
|
|
typedef MFP *PMFP;
|
|
|
|
#endif /* INCL_WINCLIPBOARD || INCL_WINDDE */
|
|
|
|
#if defined (INCL_WINCLIPBOARD)
|
|
|
|
#define CFI_OWNERFREE 0x0001
|
|
#define CFI_OWNERDISPLAY 0x0002
|
|
#define CFI_HANDLE 0x0200
|
|
#define CFI_POINTER 0x0400
|
|
|
|
BOOL WinCloseClipbrd (HAB hab);
|
|
BOOL WinEmptyClipbrd (HAB hab);
|
|
ULONG WinEnumClipbrdFmts (HAB hab, ULONG fmt);
|
|
BOOL WinOpenClipbrd (HAB hab);
|
|
ULONG WinQueryClipbrdData (HAB hab, ULONG fmt);
|
|
BOOL WinQueryClipbrdFmtInfo (HAB hab, ULONG fmt, PULONG prgfFmtInfo);
|
|
HWND WinQueryClipbrdOwner (HAB hab);
|
|
HWND WinQueryClipbrdViewer (HAB hab);
|
|
BOOL WinSetClipbrdData (HAB hab, ULONG ulData, ULONG fmt, ULONG rgfFmtInfo);
|
|
BOOL WinSetClipbrdOwner (HAB hab, HWND hwnd);
|
|
BOOL WinSetClipbrdViewer (HAB hab, HWND hwndNewClipViewer);
|
|
|
|
#endif /* INCL_WINCLIPBOARD */
|
|
|
|
|
|
#if defined (INCL_WINDDE)
|
|
|
|
#define WM_DDE_FIRST 0x00a0
|
|
#define WM_DDE_INITIATE 0x00a0
|
|
#define WM_DDE_REQUEST 0x00a1
|
|
#define WM_DDE_ACK 0x00a2
|
|
#define WM_DDE_DATA 0x00a3
|
|
#define WM_DDE_ADVISE 0x00a4
|
|
#define WM_DDE_UNADVISE 0x00a5
|
|
#define WM_DDE_POKE 0x00a6
|
|
#define WM_DDE_EXECUTE 0x00a7
|
|
#define WM_DDE_TERMINATE 0x00a8
|
|
#define WM_DDE_INITIATEACK 0x00a9
|
|
#define WM_DDE_LAST 0x00af
|
|
|
|
#define DDE_FACK 0x0001
|
|
#define DDE_FBUSY 0x0002
|
|
#define DDE_FNODATA 0x0004
|
|
#define DDE_FACKREQ 0x0008
|
|
#define DDE_FRESPONSE 0x0010
|
|
#define DDE_NOTPROCESSED 0x0020
|
|
#define DDE_FRESERVED 0x00c0
|
|
#define DDE_FAPPSTATUS 0xff00
|
|
|
|
#define DDECTXT_CASESENSITIVE 0x0001
|
|
|
|
#define DDEFMT_TEXT 0x0001
|
|
|
|
#define DDEPM_RETRY 0x0001
|
|
#define DDEPM_NOFREE 0x0002
|
|
|
|
#define SZDDESYS_TOPIC "System"
|
|
#define SZDDESYS_ITEM_TOPICS "Topics"
|
|
#define SZDDESYS_ITEM_SYSITEMS "SysItems"
|
|
#define SZDDESYS_ITEM_RTNMSG "ReturnMessage"
|
|
#define SZDDESYS_ITEM_STATUS "Status"
|
|
#define SZDDESYS_ITEM_FORMATS "Formats"
|
|
#define SZDDESYS_ITEM_SECURITY "Security"
|
|
#define SZDDESYS_ITEM_ITEMFORMATS "ItemFormats"
|
|
#define SZDDESYS_ITEM_HELP "Help"
|
|
#define SZDDESYS_ITEM_PROTOCOLS "Protocols"
|
|
#define SZDDESYS_ITEM_RESTART "Restart"
|
|
|
|
typedef struct _CONVCONTEXT
|
|
{
|
|
ULONG cb;
|
|
ULONG fsContext;
|
|
ULONG idCountry;
|
|
ULONG usCodepage;
|
|
ULONG usLangID;
|
|
ULONG usSubLangID;
|
|
} CONVCONTEXT;
|
|
typedef CONVCONTEXT *PCONVCONTEXT;
|
|
|
|
typedef struct _DDEINIT
|
|
{
|
|
ULONG cb;
|
|
PSZ pszAppName;
|
|
PSZ pszTopic;
|
|
ULONG offConvContext;
|
|
} DDEINIT;
|
|
typedef DDEINIT *PDDEINIT;
|
|
|
|
typedef struct _DDESTRUCT
|
|
{
|
|
ULONG cbData;
|
|
USHORT fsStatus;
|
|
USHORT usFormat;
|
|
USHORT offszItemName;
|
|
USHORT offabData;
|
|
} DDESTRUCT;
|
|
typedef DDESTRUCT *PDDESTRUCT;
|
|
|
|
#define DDES_PSZITEMNAME(pddes) \
|
|
(((PSZ)pddes) + ((PDDESTRUCT)pddes)->offszItemName)
|
|
|
|
#define DDES_PABDATA(pddes) \
|
|
(((PBYTE)pddes) + ((PDDESTRUCT)pddes)->offabData)
|
|
|
|
#define DDEI_PCONVCONTEXT(pddei) \
|
|
((PCONVCONTEXT)((PBYTE)pddei + pddei->offConvContext))
|
|
|
|
BOOL WinDdeInitiate (HWND hwndClient, PCSZ pszAppName, PCSZ pszTopicName,
|
|
__const__ CONVCONTEXT *pcctxt);
|
|
BOOL WinDdePostMsg (HWND hwndTo, HWND hwndFrom, ULONG wm,
|
|
__const__ DDESTRUCT *pddest, ULONG flOptions);
|
|
MRESULT WinDdeRespond (HWND hwndClient, HWND hwndServer, PCSZ pszAppName,
|
|
PCSZ pszTopicName, __const__ CONVCONTEXT *pcctxt);
|
|
|
|
#endif /* INCL_WINDDE */
|
|
|
|
|
|
#if defined (INCL_WINCOUNTRY)
|
|
|
|
#define WCS_ERROR 0
|
|
#define WCS_EQ 1
|
|
#define WCS_LT 2
|
|
#define WCS_GT 3
|
|
|
|
ULONG WinCompareStrings (HAB hab, ULONG idcp, ULONG idcc, PCSZ psz1,
|
|
PCSZ psz2, ULONG reserved);
|
|
UCHAR WinCpTranslateChar (HAB hab, ULONG cpSrc, UCHAR chSrc, ULONG cpDst);
|
|
BOOL WinCpTranslateString (HAB hab, ULONG cpSrc, PCSZ pszSrc, ULONG cpDst,
|
|
ULONG cchDestMax, PSZ pchDest);
|
|
PSZ WinNextChar (HAB hab, ULONG idcp, ULONG idcc, PCSZ psz);
|
|
PSZ WinPrevChar (HAB hab, ULONG idcp, ULONG idcc, PCSZ pszStart,
|
|
PCSZ psz);
|
|
ULONG WinQueryCp (HMQ hmq);
|
|
ULONG WinQueryCpList (HAB hab, ULONG ccpMax, PULONG prgcp);
|
|
BOOL WinSetCp (HMQ hmq, ULONG idCodePage);
|
|
ULONG WinUpper (HAB hab, ULONG idcp, ULONG idcc, PSZ psz);
|
|
ULONG WinUpperChar (HAB hab, ULONG idcp, ULONG idcc, ULONG c);
|
|
|
|
#endif /* INCL_WINCOUNTRY */
|
|
|
|
|
|
#if defined (INCL_WINCURSORS) || !defined (INCL_NOCOMMON)
|
|
|
|
#define CURSOR_SOLID 0x0000
|
|
#define CURSOR_HALFTONE 0x0001
|
|
#define CURSOR_FRAME 0x0002
|
|
#define CURSOR_FLASH 0x0004
|
|
#define CURSOR_BIDI_FIRST 0x0100
|
|
#define CURSOR_BIDI_LAST 0x0200
|
|
#define CURSOR_SETPOS 0x8000
|
|
|
|
BOOL WinCreateCursor (HWND hwnd, LONG x, LONG y, LONG cx, LONG cy,
|
|
ULONG fs, PRECTL prclClip);
|
|
BOOL WinDestroyCursor (HWND hwnd);
|
|
BOOL WinShowCursor (HWND hwnd, BOOL fShow);
|
|
|
|
#endif /* INCL_WINCURSORS || !INCL_NOCOMMON */
|
|
|
|
#if defined (INCL_WINCURSORS)
|
|
|
|
typedef struct _CURSORINFO
|
|
{
|
|
HWND hwnd;
|
|
LONG x;
|
|
LONG y;
|
|
LONG cx;
|
|
LONG cy;
|
|
ULONG fs;
|
|
RECTL rclClip;
|
|
} CURSORINFO;
|
|
typedef CURSORINFO *PCURSORINFO;
|
|
|
|
BOOL WinQueryCursorInfo (HWND hwndDesktop, PCURSORINFO pCursorInfo);
|
|
|
|
#endif /* INCL_WINCURSORS */
|
|
|
|
|
|
#if defined (INCL_WINDESKTOP)
|
|
|
|
#define SDT_DESTROY 0x0001
|
|
#define SDT_NOBKGND 0x0002
|
|
#define SDT_TILE 0x0004
|
|
#define SDT_SCALE 0x0008
|
|
#define SDT_PATTERN 0x0010
|
|
#define SDT_CENTER 0x0020
|
|
#define SDT_RETAIN 0x0040
|
|
#define SDT_LOADFILE 0x0080
|
|
|
|
typedef struct _DESKTOP
|
|
{
|
|
ULONG cbSize;
|
|
HBITMAP hbm;
|
|
LONG x;
|
|
LONG y;
|
|
ULONG fl;
|
|
LONG lTileCount;
|
|
CHAR szFile[260];
|
|
} DESKTOP;
|
|
typedef DESKTOP *PDESKTOP;
|
|
|
|
BOOL WinQueryDesktopBkgnd (HWND hwndDesktop, PDESKTOP pdsk);
|
|
HBITMAP WinSetDesktopBkgnd (HWND hwndDesktop, __const__ DESKTOP *pdskNew);
|
|
|
|
#endif /* INCL_WINDESKTOP */
|
|
|
|
|
|
#if defined (INCL_WINDIALOGS) || !defined (INCL_NOCOMMON)
|
|
|
|
#define DID_OK 1
|
|
#define DID_CANCEL 2
|
|
#define DID_ERROR 0xffff
|
|
|
|
#define MB_OK 0x0000
|
|
#define MB_OKCANCEL 0x0001
|
|
#define MB_RETRYCANCEL 0x0002
|
|
#define MB_ABORTRETRYIGNORE 0x0003
|
|
#define MB_YESNO 0x0004
|
|
#define MB_YESNOCANCEL 0x0005
|
|
#define MB_CANCEL 0x0006
|
|
#define MB_ENTER 0x0007
|
|
#define MB_ENTERCANCEL 0x0008
|
|
|
|
#define MB_NOICON 0x0000
|
|
#define MB_CUANOTIFICATION 0x0000
|
|
#define MB_ICONQUESTION 0x0010
|
|
#define MB_ICONEXCLAMATION 0x0020
|
|
#define MB_CUAWARNING 0x0020
|
|
#define MB_ICONASTERISK 0x0030
|
|
#define MB_ICONHAND 0x0040
|
|
#define MB_CUACRITICAL 0x0040
|
|
#define MB_QUERY MB_ICONQUESTION
|
|
#define MB_WARNING MB_CUAWARNING
|
|
#define MB_INFORMATION MB_ICONASTERISK
|
|
#define MB_CRITICAL MB_CUACRITICAL
|
|
#define MB_ERROR MB_CRITICAL
|
|
#define MB_CUSTOMICON 0x0080
|
|
|
|
#define MB_DEFBUTTON1 0x0000
|
|
#define MB_DEFBUTTON2 0x0100
|
|
#define MB_DEFBUTTON3 0x0200
|
|
|
|
#define MB_APPLMODAL 0x0000
|
|
#define MB_SYSTEMMODAL 0x1000
|
|
#define MB_HELP 0x2000
|
|
#define MB_MOVEABLE 0x4000
|
|
#define MB_NONMODAL 0x8000
|
|
|
|
#define MBID_OK 1
|
|
#define MBID_CANCEL 2
|
|
#define MBID_ABORT 3
|
|
#define MBID_RETRY 4
|
|
#define MBID_IGNORE 5
|
|
#define MBID_YES 6
|
|
#define MBID_NO 7
|
|
#define MBID_HELP 8
|
|
#define MBID_ENTER 9
|
|
#define MBID_ERROR 0xffff
|
|
|
|
#define WA_WARNING 0
|
|
#define WA_NOTE 1
|
|
#define WA_ERROR 2
|
|
#define WA_CDEFALARMS 3
|
|
|
|
#if 0 /* Multimedia */
|
|
#define WA_WINDOWOPEN 3
|
|
#define WA_WINDOWCLOSE 4
|
|
#define WA_BEGINDRAG 5
|
|
#define WA_ENDDRAG 6
|
|
#define WA_STARTUP 7
|
|
#define WA_SHUTDOWN 8
|
|
#define WA_SHRED 9
|
|
#define WA_CWINALARMS 13
|
|
#endif /* 0 */
|
|
|
|
#define MAX_MBDTEXT 70
|
|
|
|
typedef struct _MB2D
|
|
{
|
|
CHAR achText[MAX_MBDTEXT+1];
|
|
CHAR _pad[1];
|
|
ULONG idButton;
|
|
LONG flStyle;
|
|
} MB2D;
|
|
typedef MB2D *PMB2D;
|
|
|
|
typedef struct _MB2INFO
|
|
{
|
|
ULONG cb;
|
|
HPOINTER hIcon;
|
|
ULONG cButtons;
|
|
ULONG flStyle;
|
|
HWND hwndNotify;
|
|
MB2D mb2d[1];
|
|
} MB2INFO;
|
|
|
|
typedef MB2INFO *PMB2INFO;
|
|
|
|
|
|
#define WinCheckButton(hwndDlg,id,usCheckState) \
|
|
((ULONG)WinSendDlgItemMsg (hwndDlg, id, BM_SETCHECK, \
|
|
MPFROMSHORT (usCheckState), (MPARAM)NULL))
|
|
|
|
#define WinEnableControl(hwndDlg,id,fEnable) \
|
|
WinEnableWindow (WinWindowFromID (hwndDlg, id), fEnable)
|
|
|
|
#define WinIsControlEnabled(hwndDlg,id) \
|
|
((BOOL)WinIsWindowEnabled (WinWindowFromID (hwndDlg, id)))
|
|
|
|
#define WinQueryButtonCheckstate(hwndDlg,id) \
|
|
((ULONG)WinSendDlgItemMsg (hwndDlg, id, BM_QUERYCHECK, \
|
|
(MPARAM)NULL, (MPARAM)NULL))
|
|
|
|
|
|
BOOL WinAlarm (HWND hwndDesktop, ULONG rgfType);
|
|
MRESULT WinDefDlgProc (HWND hwndDlg, ULONG msg, MPARAM mp1, MPARAM mp2);
|
|
BOOL WinDismissDlg (HWND hwndDlg, ULONG usResult);
|
|
ULONG WinDlgBox (HWND hwndParent, HWND hwndOwner, PFNWP pfnDlgProc,
|
|
HMODULE hmod, ULONG idDlg, PVOID pCreateParams);
|
|
BOOL WinGetDlgMsg (HWND hwndDlg, PQMSG pqmsg);
|
|
HWND WinLoadDlg (HWND hwndParent, HWND hwndOwner, PFNWP pfnDlgProc,
|
|
HMODULE hmod, ULONG idDlg, PVOID pCreateParams);
|
|
ULONG WinMessageBox (HWND hwndParent, HWND hwndOwner, PCSZ pszText,
|
|
PCSZ pszCaption, ULONG idWindow, ULONG flStyle);
|
|
ULONG WinMessageBox2 (HWND hwndParent, HWND hwndOwner, PCSZ pszText,
|
|
PCSZ pszCaption, ULONG idWindow, PMB2INFO pmb2info);
|
|
BOOL WinQueryDlgItemShort (HWND hwndDlg, ULONG idItem, PSHORT pResult,
|
|
BOOL fSigned);
|
|
ULONG WinQueryDlgItemText (HWND hwndDlg, ULONG idItem, LONG cchBufferMax,
|
|
PSZ pchBuffer);
|
|
LONG WinQueryDlgItemTextLength (HWND hwndDlg, ULONG idItem);
|
|
BOOL WinSetDlgItemShort (HWND hwndDlg, ULONG idItem, USHORT usValue,
|
|
BOOL fSigned);
|
|
BOOL WinSetDlgItemText (HWND hwndDlg, ULONG idItem, PCSZ pszText);
|
|
|
|
#endif /* INCL_WINDIALOGS || !defined (INCL_NOCOMMON) */
|
|
|
|
|
|
#if defined (INCL_WINDIALOGS)
|
|
|
|
#define DLGC_ENTRYFIELD 0x0001
|
|
#define DLGC_BUTTON 0x0002
|
|
#define DLGC_RADIOBUTTON 0x0004
|
|
#define DLGC_STATIC 0x0008
|
|
#define DLGC_DEFAULT 0x0010
|
|
#define DLGC_PUSHBUTTON 0x0020
|
|
#define DLGC_CHECKBOX 0x0040
|
|
#define DLGC_SCROLLBAR 0x0080
|
|
#define DLGC_MENU 0x0100
|
|
#define DLGC_TABONCLICK 0x0200
|
|
#define DLGC_MLE 0x0400
|
|
|
|
#define EDI_FIRSTTABITEM 0
|
|
#define EDI_LASTTABITEM 1
|
|
#define EDI_NEXTTABITEM 2
|
|
#define EDI_PREVTABITEM 3
|
|
#define EDI_FIRSTGROUPITEM 4
|
|
#define EDI_LASTGROUPITEM 5
|
|
#define EDI_NEXTGROUPITEM 6
|
|
#define EDI_PREVGROUPITEM 7
|
|
|
|
typedef struct _DLGTITEM
|
|
{
|
|
USHORT fsItemStatus;
|
|
USHORT cChildren;
|
|
USHORT cchClassName;
|
|
USHORT offClassName;
|
|
USHORT cchText;
|
|
USHORT offText;
|
|
ULONG flStyle;
|
|
SHORT x;
|
|
SHORT y;
|
|
SHORT cx;
|
|
SHORT cy;
|
|
USHORT id;
|
|
USHORT offPresParams;
|
|
USHORT offCtlData;
|
|
} DLGTITEM;
|
|
typedef DLGTITEM *PDLGTITEM;
|
|
|
|
typedef struct _DLGTEMPLATE
|
|
{
|
|
USHORT cbTemplate;
|
|
USHORT type;
|
|
USHORT codepage;
|
|
USHORT offadlgti;
|
|
USHORT fsTemplateStatus;
|
|
USHORT iItemFocus;
|
|
USHORT coffPresParams;
|
|
DLGTITEM adlgti[1];
|
|
} DLGTEMPLATE;
|
|
typedef DLGTEMPLATE *PDLGTEMPLATE;
|
|
|
|
|
|
HWND WinCreateDlg (HWND hwndParent, HWND hwndOwner, PFNWP pfnDlgProc,
|
|
PDLGTEMPLATE pdlgt, PVOID pCreateParams);
|
|
HWND WinEnumDlgItem (HWND hwndDlg, HWND hwnd, ULONG code);
|
|
BOOL WinMapDlgPoints (HWND hwndDlg, PPOINTL prgwptl, ULONG cwpt,
|
|
BOOL fCalcWindowCoords);
|
|
ULONG WinProcessDlg (HWND hwndDlg);
|
|
MRESULT WinSendDlgItemMsg (HWND hwndDlg, ULONG idItem, ULONG msg,
|
|
MPARAM mp1, MPARAM mp2);
|
|
LONG WinSubstituteStrings (HWND hwnd, PCSZ pszSrc, LONG cchDstMax,
|
|
PSZ pszDst);
|
|
|
|
#endif /* INCL_WINDIALOGS */
|
|
|
|
|
|
#if defined (INCL_WINENTRYFIELDS)
|
|
|
|
#define CBID_LIST 0x029a
|
|
#define CBID_EDIT 0x029b
|
|
|
|
#define CBM_SHOWLIST 0x0170
|
|
#define CBM_HILITE 0x0171
|
|
#define CBM_ISLISTSHOWING 0x0172
|
|
|
|
#define CBN_EFCHANGE 1
|
|
#define CBN_EFSCROLL 2
|
|
#define CBN_MEMERROR 3
|
|
#define CBN_LBSELECT 4
|
|
#define CBN_LBSCROLL 5
|
|
#define CBN_SHOWLIST 6
|
|
#define CBN_ENTER 7
|
|
|
|
#define CBS_SIMPLE 0x0001
|
|
#define CBS_DROPDOWN 0x0002
|
|
#define CBS_DROPDOWNLIST 0x0004
|
|
#define CBS_COMPATIBLE 0x0008
|
|
|
|
#define EM_QUERYCHANGED 0x0140
|
|
#define EM_QUERYSEL 0x0141
|
|
#define EM_SETSEL 0x0142
|
|
#define EM_SETTEXTLIMIT 0x0143
|
|
#define EM_CUT 0x0144
|
|
#define EM_COPY 0x0145
|
|
#define EM_CLEAR 0x0146
|
|
#define EM_PASTE 0x0147
|
|
#define EM_QUERYFIRSTCHAR 0x0148
|
|
#define EM_SETFIRSTCHAR 0x0149
|
|
#define EM_QUERYREADONLY 0x014a
|
|
#define EM_SETREADONLY 0x014b
|
|
#define EM_SETINSERTMODE 0x014c
|
|
|
|
#define EN_SETFOCUS 0x0001
|
|
#define EN_KILLFOCUS 0x0002
|
|
#define EN_CHANGE 0x0004
|
|
#define EN_SCROLL 0x0008
|
|
#define EN_MEMERROR 0x0010
|
|
#define EN_OVERFLOW 0x0020
|
|
#define EN_INSERTMODETOGGLE 0x0040
|
|
|
|
#define ES_LEFT 0x0000
|
|
#define ES_CENTER 0x0001
|
|
#define ES_RIGHT 0x0002
|
|
#define ES_AUTOSCROLL 0x0004
|
|
#define ES_MARGIN 0x0008
|
|
#define ES_AUTOTAB 0x0010
|
|
#define ES_READONLY 0x0020
|
|
#define ES_COMMAND 0x0040
|
|
#define ES_UNREADABLE 0x0080
|
|
#define ES_AUTOSIZE 0x0200
|
|
|
|
#if defined (INCL_NLS)
|
|
#define ES_ANY 0x0000
|
|
#define ES_SBCS 0x1000
|
|
#define ES_DBCS 0x2000
|
|
#define ES_MIXED 0x3000
|
|
#endif /* INCL_NLS */
|
|
|
|
typedef struct _COMBOCDATA
|
|
{
|
|
ULONG cbSize;
|
|
ULONG reserved;
|
|
PVOID pHWXCtlData;
|
|
} COMBOCDATA;
|
|
typedef COMBOCDATA *PCOMBOCDATA;
|
|
|
|
typedef struct _ENTRYFDATA
|
|
{
|
|
USHORT cb;
|
|
USHORT cchEditLimit;
|
|
USHORT ichMinSel;
|
|
USHORT ichMaxSel;
|
|
PVOID pHWXCtlData;
|
|
} ENTRYFDATA;
|
|
typedef ENTRYFDATA *PENTRYFDATA;
|
|
|
|
#endif /* INCL_WINENTRYFIELDS */
|
|
|
|
|
|
#if defined (INCL_WINERRORS)
|
|
|
|
typedef struct _ERRINFO
|
|
{
|
|
ULONG cbFixedErrInfo;
|
|
ERRORID idError;
|
|
ULONG cDetailLevel;
|
|
ULONG offaoffszMsg;
|
|
ULONG offBinaryData;
|
|
} ERRINFO;
|
|
typedef ERRINFO *PERRINFO;
|
|
|
|
ERRORID WinGetLastError (HAB hab);
|
|
BOOL WinFreeErrorInfo (PERRINFO perrinfo);
|
|
PERRINFO WinGetErrorInfo (HAB hab);
|
|
|
|
#endif /* INCL_WINERRORS */
|
|
|
|
|
|
#if defined (INCL_WINFRAMECTLS)
|
|
|
|
#define TBM_SETHILITE 0x01e3
|
|
#define TBM_QUERYHILITE 0x01e4
|
|
|
|
#endif /* INCL_WINFRAMECTLS */
|
|
|
|
|
|
#if defined (INCL_WINHOOKS)
|
|
|
|
#define HK_SENDMSG 0
|
|
#define HK_INPUT 1
|
|
#define HK_MSGFILTER 2
|
|
#define HK_JOURNALRECORD 3
|
|
#define HK_JOURNALPLAYBACK 4
|
|
#define HK_HELP 5
|
|
#define HK_LOADER 6
|
|
#define HK_REGISTERUSERMSG 7
|
|
#define HK_MSGCONTROL 8
|
|
#define HK_PLIST_ENTRY 9
|
|
#define HK_PLIST_EXIT 10
|
|
#define HK_FINDWORD 11
|
|
#define HK_CODEPAGECHANGED 12
|
|
#define HK_WINDOWDC 15
|
|
#define HK_DESTROYWINDOW 16
|
|
#define HK_CHECKMSGFILTER 20
|
|
#define HK_MSGINPUT 21
|
|
#define HK_ALARM 22
|
|
#define HK_LOCKUP 23
|
|
#define HK_FLUSHBUF 24
|
|
|
|
#define HLPM_FRAME (-1)
|
|
#define HLPM_WINDOW (-2)
|
|
#define HLPM_MENU (-3)
|
|
|
|
#define HMQ_CURRENT ((HMQ)1)
|
|
|
|
#define LHK_DELETEPROC 1
|
|
#define LHK_DELETELIB 2
|
|
#define LHK_LOADPROC 3
|
|
#define LHK_LOADLIB 4
|
|
|
|
#define MCHK_MSGINTEREST 1
|
|
#define MCHK_CLASSMSGINTEREST 2
|
|
#define MCHK_SYNCHRONISATION 3
|
|
#define MCHK_MSGMODE 4
|
|
|
|
#define MSGF_DIALOGBOX 1
|
|
#define MSGF_MESSAGEBOX 2
|
|
#define MSGF_DDEPOSTMSG 3
|
|
#define MSGF_TRACK 8
|
|
|
|
#define PM_MODEL_1X 0
|
|
#define PM_MODEL_2X 1
|
|
|
|
#define RUMHK_DATATYPE 1
|
|
#define RUMHK_MSG 2
|
|
|
|
|
|
typedef struct _SMHSTRUCT
|
|
{
|
|
MPARAM mp2;
|
|
MPARAM mp1;
|
|
ULONG msg;
|
|
HWND hwnd;
|
|
ULONG model;
|
|
} SMHSTRUCT;
|
|
typedef SMHSTRUCT *PSMHSTRUCT;
|
|
|
|
|
|
BOOL WinCallMsgFilter (HAB hab, PQMSG pqmsg, ULONG msgf);
|
|
BOOL WinReleaseHook (HAB hab, HMQ hmq, LONG iHook, PFN pfnHook, HMODULE hmod);
|
|
BOOL WinSetHook (HAB hab, HMQ hmq, LONG iHook, PFN pfnHook, HMODULE hmod);
|
|
|
|
#endif /* INCL_WINHOOKS */
|
|
|
|
|
|
#if defined (INCL_WININPUT) || !defined (INCL_NOCOMMON)
|
|
|
|
#define FC_NOSETFOCUS 0x0001
|
|
#define FC_NOBRINGTOTOP 0x0001 /*!*/
|
|
#define FC_NOLOSEFOCUS 0x0002
|
|
#define FC_NOBRINGTOPFIRSTWINDOW 0x0002 /*!*/
|
|
#define FC_NOSETACTIVE 0x0004
|
|
#define FC_NOLOSEACTIVE 0x0008
|
|
#define FC_NOSETSELECTION 0x0010
|
|
#define FC_NOLOSESELECTION 0x0020
|
|
|
|
#define QFC_NEXTINCHAIN 0x0001
|
|
#define QFC_ACTIVE 0x0002
|
|
#define QFC_FRAME 0x0003
|
|
#define QFC_SELECTACTIVE 0x0004
|
|
#define QFC_PARTOFCHAIN 0x0005
|
|
|
|
BOOL WinFocusChange (HWND hwndDesktop, HWND hwndSetFocus, ULONG flFocusChange);
|
|
BOOL WinLockupSystem (HAB hab);
|
|
BOOL WinSetFocus (HWND hwndDesktop, HWND hwndSetFocus);
|
|
BOOL WinUnlockSystem (HAB hab, PCSZ pszPassword);
|
|
|
|
#endif /* INCL_WININPUT || !INCL_NOCOMMON */
|
|
|
|
|
|
#if defined (INCL_WININPUT)
|
|
|
|
#define WM_MOUSEFIRST 0x0070
|
|
#define WM_MOUSEMOVE 0x0070
|
|
#define WM_BUTTONCLICKFIRST 0x0071
|
|
#define WM_BUTTON1DOWN 0x0071
|
|
#define WM_BUTTON1UP 0x0072
|
|
#define WM_BUTTON1DBLCLK 0x0073
|
|
#define WM_BUTTON2DOWN 0x0074
|
|
#define WM_BUTTON2UP 0x0075
|
|
#define WM_BUTTON2DBLCLK 0x0076
|
|
#define WM_BUTTON3DOWN 0x0077
|
|
#define WM_BUTTON3UP 0x0078
|
|
#define WM_BUTTON3DBLCLK 0x0079
|
|
#define WM_BUTTONCLICKLAST 0x0079
|
|
#define WM_MOUSELAST 0x0079
|
|
#define WM_CHAR 0x007a
|
|
#define WM_VIOCHAR 0x007b
|
|
#define WM_JOURNALNOTIFY 0x007c
|
|
#define WM_MOUSEMAP 0x007d
|
|
#define WM_VRNDISABLED 0x007e
|
|
#define WM_VRNENABLED 0x007f
|
|
|
|
#define WM_EXTMOUSEFIRST 0x0410
|
|
#define WM_CHORD 0x0410
|
|
#define WM_BUTTON1MOTIONSTART 0x0411
|
|
#define WM_BUTTON1MOTIONEND 0x0412
|
|
#define WM_BUTTON1CLICK 0x0413
|
|
#define WM_BUTTON2MOTIONSTART 0x0414
|
|
#define WM_BUTTON2MOTIONEND 0x0415
|
|
#define WM_BUTTON2CLICK 0x0416
|
|
#define WM_BUTTON3MOTIONSTART 0x0417
|
|
#define WM_BUTTON3MOTIONEND 0x0418
|
|
#define WM_BUTTON3CLICK 0x0419
|
|
#define WM_EXTMOUSELAST 0x0419
|
|
|
|
#define WM_MOUSETRANSLATEFIRST 0x0420
|
|
#define WM_BEGINDRAG 0x0420
|
|
#define WM_ENDDRAG 0x0421
|
|
#define WM_SINGLESELECT 0x0422
|
|
#define WM_OPEN 0x0423
|
|
#define WM_CONTEXTMENU 0x0424
|
|
#define WM_CONTEXTHELP 0x0425
|
|
#define WM_TEXTEDIT 0x0426
|
|
#define WM_BEGINSELECT 0x0427
|
|
#define WM_ENDSELECT 0x0428
|
|
#define WM_MOUSETRANSLATELAST 0x0428
|
|
#define WM_PICKUP 0x0429
|
|
|
|
#define WM_PENFIRST 0x0481
|
|
#define WM_PENLAST 0x049f
|
|
|
|
#define WM_MMPMFIRST 0x0500
|
|
#define WM_MMPMLAST 0x05ff
|
|
|
|
#define WM_BIDI_FIRST 0x0bd0
|
|
#define WM_BIDI_LAST 0x0bff
|
|
|
|
#define INP_NONE 0x0000
|
|
#define INP_KBD 0x0001
|
|
#define INP_MULT 0x0002
|
|
#define INP_RES2 0x0004
|
|
#define INP_SHIFT 0x0008
|
|
#define INP_CTRL 0x0010
|
|
#define INP_ALT 0x0020
|
|
#define INP_RES3 0x0040
|
|
#define INP_RES4 0x0080
|
|
#define INP_IGNORE 0xffff
|
|
|
|
#define JRN_QUEUESTATUS 0x0001
|
|
#define JRN_PHYSKEYSTATE 0x0002
|
|
|
|
#define KC_NONE 0x0000
|
|
#define KC_CHAR 0x0001
|
|
#define KC_VIRTUALKEY 0x0002
|
|
#define KC_SCANCODE 0x0004
|
|
#define KC_SHIFT 0x0008
|
|
#define KC_CTRL 0x0010
|
|
#define KC_ALT 0x0020
|
|
#define KC_KEYUP 0x0040
|
|
#define KC_PREVDOWN 0x0080
|
|
#define KC_LONEKEY 0x0100
|
|
#define KC_DEADKEY 0x0200
|
|
#define KC_COMPOSITE 0x0400
|
|
#define KC_INVALIDCOMP 0x0800
|
|
#define KC_TOGGLE 0x1000
|
|
#define KC_INVALIDCHAR 0x2000
|
|
#define KC_DBCSRSRVD1 0x4000
|
|
#define KC_DBCSRSRVD2 0x8000
|
|
|
|
#define VK_BUTTON1 0x0001
|
|
#define VK_BUTTON2 0x0002
|
|
#define VK_BUTTON3 0x0003
|
|
#define VK_BREAK 0x0004
|
|
#define VK_BACKSPACE 0x0005
|
|
#define VK_TAB 0x0006
|
|
#define VK_BACKTAB 0x0007
|
|
#define VK_NEWLINE 0x0008
|
|
#define VK_SHIFT 0x0009
|
|
#define VK_CTRL 0x000a
|
|
#define VK_ALT 0x000b
|
|
#define VK_ALTGRAF 0x000c
|
|
#define VK_PAUSE 0x000d
|
|
#define VK_CAPSLOCK 0x000e
|
|
#define VK_ESC 0x000f
|
|
#define VK_SPACE 0x0010
|
|
#define VK_PAGEUP 0x0011
|
|
#define VK_PAGEDOWN 0x0012
|
|
#define VK_END 0x0013
|
|
#define VK_HOME 0x0014
|
|
#define VK_LEFT 0x0015
|
|
#define VK_UP 0x0016
|
|
#define VK_RIGHT 0x0017
|
|
#define VK_DOWN 0x0018
|
|
#define VK_PRINTSCRN 0x0019
|
|
#define VK_INSERT 0x001a
|
|
#define VK_DELETE 0x001b
|
|
#define VK_SCRLLOCK 0x001c
|
|
#define VK_NUMLOCK 0x001d
|
|
#define VK_ENTER 0x001e
|
|
#define VK_SYSRQ 0x001f
|
|
#define VK_F1 0x0020
|
|
#define VK_F2 0x0021
|
|
#define VK_F3 0x0022
|
|
#define VK_F4 0x0023
|
|
#define VK_F5 0x0024
|
|
#define VK_F6 0x0025
|
|
#define VK_F7 0x0026
|
|
#define VK_F8 0x0027
|
|
#define VK_F9 0x0028
|
|
#define VK_F10 0x0029
|
|
#define VK_F11 0x002a
|
|
#define VK_F12 0x002b
|
|
#define VK_F13 0x002c
|
|
#define VK_F14 0x002d
|
|
#define VK_F15 0x002e
|
|
#define VK_F16 0x002f
|
|
#define VK_F17 0x0030
|
|
#define VK_F18 0x0031
|
|
#define VK_F19 0x0032
|
|
#define VK_F20 0x0033
|
|
#define VK_F21 0x0034
|
|
#define VK_F22 0x0035
|
|
#define VK_F23 0x0036
|
|
#define VK_F24 0x0037
|
|
#define VK_ENDDRAG 0x0038
|
|
#define VK_CLEAR 0x0039
|
|
#define VK_EREOF 0x003a
|
|
#define VK_PA1 0x003b
|
|
#define VK_ATTN 0x003c
|
|
#define VK_CRSEL 0x003d
|
|
#define VK_EXSEL 0x003e
|
|
#define VK_COPY 0x003f
|
|
#define VK_BLK1 0x0040
|
|
#define VK_BLK2 0x0041
|
|
|
|
#define VK_MENU VK_F10
|
|
|
|
#if defined (INCL_NLS)
|
|
#define VK_DBCSFIRST 0x0080
|
|
#define VK_DBCSLAST 0x00ff
|
|
#define VK_BIDI_FIRST 0x00e0
|
|
#define VK_BIDI_LAST 0x00ff
|
|
#endif /* INCL_NLS */
|
|
|
|
#define VK_USERFIRST 0x0100
|
|
#define VK_USERLAST 0x01ff
|
|
|
|
typedef struct _CHARMSG
|
|
{
|
|
USHORT fs;
|
|
UCHAR cRepeat;
|
|
UCHAR scancode;
|
|
USHORT chr;
|
|
USHORT vkey;
|
|
} CHRMSG;
|
|
typedef CHRMSG *PCHRMSG;
|
|
|
|
typedef struct _MOUSEMSG
|
|
{
|
|
SHORT x;
|
|
SHORT y;
|
|
USHORT codeHitTest;
|
|
USHORT fsInp;
|
|
} MSEMSG;
|
|
typedef MSEMSG *PMSEMSG;
|
|
|
|
#define CHARMSG(pmsg) ((PCHRMSG)((PBYTE)pmsg + sizeof (ULONG)))
|
|
#define MOUSEMSG(pmsg) ((PMSEMSG)((PBYTE)pmsg + sizeof (ULONG)))
|
|
|
|
BOOL WinCheckInput (HAB hab);
|
|
BOOL WinEnablePhysInput (HWND hwndDesktop, BOOL fEnable);
|
|
LONG WinGetKeyState (HWND hwndDesktop, LONG vkey);
|
|
LONG WinGetPhysKeyState (HWND hwndDesktop, LONG sc);
|
|
BOOL WinIsPhysInputEnabled (HWND hwndDesktop);
|
|
HWND WinQueryCapture (HWND hwndDesktop);
|
|
HWND WinQueryFocus (HWND hwndDesktop);
|
|
ULONG WinQueryVisibleRegion (HWND hwnd, HRGN hrgn);
|
|
BOOL WinSetCapture (HWND hwndDesktop, HWND hwnd);
|
|
BOOL WinSetKeyboardStateTable (HWND hwndDesktop, PBYTE pKeyStateTable,
|
|
BOOL fSet);
|
|
BOOL WinSetVisibleRegionNotify (HWND hwnd, BOOL fEnable);
|
|
|
|
#endif /* INCL_WININPUT */
|
|
|
|
|
|
#if defined (INCL_WINLISTBOXES)
|
|
|
|
#define LS_MULTIPLESEL 0x0001
|
|
#define LS_OWNERDRAW 0x0002
|
|
#define LS_NOADJUSTPOS 0x0004
|
|
#define LS_HORZSCROLL 0x0008
|
|
#define LS_EXTENDEDSEL 0x0010
|
|
|
|
#define LN_SELECT 1
|
|
#define LN_SETFOCUS 2
|
|
#define LN_KILLFOCUS 3
|
|
#define LN_SCROLL 4
|
|
#define LN_ENTER 5
|
|
|
|
#define LM_QUERYITEMCOUNT 0x0160
|
|
#define LM_INSERTITEM 0x0161
|
|
#define LM_SETTOPINDEX 0x0162
|
|
#define LM_DELETEITEM 0x0163
|
|
#define LM_SELECTITEM 0x0164
|
|
#define LM_QUERYSELECTION 0x0165
|
|
#define LM_SETITEMTEXT 0x0166
|
|
#define LM_QUERYITEMTEXTLENGTH 0x0167
|
|
#define LM_QUERYITEMTEXT 0x0168
|
|
#define LM_SETITEMHANDLE 0x0169
|
|
#define LM_QUERYITEMHANDLE 0x016a
|
|
#define LM_SEARCHSTRING 0x016b
|
|
#define LM_SETITEMHEIGHT 0x016c
|
|
#define LM_QUERYTOPINDEX 0x016d
|
|
#define LM_DELETEALL 0x016e
|
|
#define LM_INSERTMULTITEMS 0x016f
|
|
#define LM_SETITEMWIDTH 0x0660 /* ? */
|
|
|
|
#define LIT_CURSOR (-4)
|
|
#define LIT_ERROR (-3)
|
|
#define LIT_MEMERROR (-2)
|
|
#define LIT_NONE (-1)
|
|
#define LIT_FIRST (-1)
|
|
|
|
#define LIT_END (-1)
|
|
#define LIT_SORTASCENDING (-2)
|
|
#define LIT_SORTDESCENDING (-3)
|
|
|
|
#define LSS_SUBSTRING 0x0001
|
|
#define LSS_PREFIX 0x0002
|
|
#define LSS_CASESENSITIVE 0x0004
|
|
|
|
|
|
typedef struct _LBOXINFO
|
|
{
|
|
LONG lItemIndex;
|
|
ULONG ulItemCount;
|
|
ULONG reserved;
|
|
ULONG reserved2;
|
|
} LBOXINFO;
|
|
typedef LBOXINFO *PLBOXINFO;
|
|
|
|
|
|
#define WinDeleteLboxItem(hwndLbox,index) \
|
|
((LONG)WinSendMsg (hwndLbox, LM_DELETEITEM, MPFROMLONG (index), \
|
|
(MPARAM)NULL))
|
|
|
|
#define WinInsertLboxItem(hwndLbox,index,psz) \
|
|
((LONG)WinSendMsg (hwndLbox, LM_INSERTITEM, MPFROMLONG(index), \
|
|
MPFROMP (psz)))
|
|
|
|
#define WinQueryLboxCount(hwndLbox) \
|
|
((LONG)WinSendMsg (hwndLbox, LM_QUERYITEMCOUNT, (MPARAM)NULL, \
|
|
(MPARAM)NULL))
|
|
|
|
#define WinQueryLboxItemText(hwndLbox,index,psz,cchMax) \
|
|
((LONG)WinSendMsg (hwndLbox, LM_QUERYITEMTEXT, \
|
|
MPFROM2SHORT((index), (cchMax)), MPFROMP (psz)))
|
|
|
|
#define WinQueryLboxItemTextLength(hwndLbox,index) \
|
|
((SHORT)WinSendMsg (hwndLbox, LM_QUERYITEMTEXTLENGTH, \
|
|
MPFROMSHORT (index), (MPARAM)NULL))
|
|
|
|
#define WinQueryLboxSelectedItem(hwndLbox) \
|
|
((LONG)WinSendMsg (hwndLbox, LM_QUERYSELECTION, MPFROMLONG (LIT_FIRST), \
|
|
(MPARAM)NULL))
|
|
|
|
#define WinSetLboxItemText(hwndLbox,index,psz) \
|
|
((BOOL)WinSendMsg (hwndLbox, LM_SETITEMTEXT, \
|
|
MPFROMLONG (index), MPFROMP (psz)))
|
|
|
|
#endif /* INCL_WINLISTBOXES */
|
|
|
|
|
|
#if defined (INCL_WINLOAD)
|
|
|
|
BOOL WinDeleteLibrary (HAB hab, HLIB libhandle);
|
|
BOOL WinDeleteProcedure (HAB hab, PFNWP wndproc);
|
|
HLIB WinLoadLibrary (HAB hab, PCSZ libname);
|
|
PFNWP WinLoadProcedure (HAB hab, HLIB libhandle, PSZ procname);
|
|
|
|
#endif /* INCL_WINLOAD */
|
|
|
|
|
|
#if defined (INCL_WINMENUS)
|
|
|
|
#define MIA_NODISMISS 0x0020
|
|
#define MIA_FRAMED 0x1000
|
|
#define MIA_CHECKED 0x2000
|
|
#define MIA_DISABLED 0x4000
|
|
#define MIA_HILITED 0x8000
|
|
|
|
#define MIS_TEXT 0x0001
|
|
#define MIS_BITMAP 0x0002
|
|
#define MIS_SEPARATOR 0x0004
|
|
#define MIS_OWNERDRAW 0x0008
|
|
#define MIS_SUBMENU 0x0010
|
|
#define MIS_MULTMENU 0x0020
|
|
#define MIS_SYSCOMMAND 0x0040
|
|
#define MIS_HELP 0x0080
|
|
#define MIS_STATIC 0x0100
|
|
#define MIS_BUTTONSEPARATOR 0x0200
|
|
#define MIS_BREAK 0x0400
|
|
#define MIS_BREAKSEPARATOR 0x0800
|
|
#define MIS_GROUP 0x1000
|
|
#define MIS_SINGLE 0x2000
|
|
|
|
#define MIT_END (-1)
|
|
#define MIT_NONE (-1)
|
|
#define MIT_MEMERROR (-1)
|
|
#define MIT_ERROR (-1)
|
|
#define MIT_FIRST (-2)
|
|
#define MIT_LAST (-3)
|
|
|
|
#define MM_INSERTITEM 0x0180
|
|
#define MM_DELETEITEM 0x0181
|
|
#define MM_QUERYITEM 0x0182
|
|
#define MM_SETITEM 0x0183
|
|
#define MM_QUERYITEMCOUNT 0x0184
|
|
#define MM_STARTMENUMODE 0x0185
|
|
#define MM_ENDMENUMODE 0x0186
|
|
#define MM_REMOVEITEM 0x0188
|
|
#define MM_SELECTITEM 0x0189
|
|
#define MM_QUERYSELITEMID 0x018a
|
|
#define MM_QUERYITEMTEXT 0x018b
|
|
#define MM_QUERYITEMTEXTLENGTH 0x018c
|
|
#define MM_SETITEMHANDLE 0x018d
|
|
#define MM_SETITEMTEXT 0x018e
|
|
#define MM_ITEMPOSITIONFROMID 0x018f
|
|
#define MM_ITEMIDFROMPOSITION 0x0190
|
|
#define MM_QUERYITEMATTR 0x0191
|
|
#define MM_SETITEMATTR 0x0192
|
|
#define MM_ISITEMVALID 0x0193
|
|
#define MM_QUERYITEMRECT 0x0194
|
|
|
|
#define MM_QUERYDEFAULTITEMID 0x0431
|
|
#define MM_SETDEFAULTITEMID 0x0432
|
|
|
|
#define MS_ACTIONBAR 0x0001
|
|
#define MS_TITLEBUTTON 0x0002
|
|
#define MS_VERTICALFLIP 0x0004
|
|
#define MS_CONDITIONALCASCADE 0x0040
|
|
|
|
#define PU_POSITIONONITEM 0x0001
|
|
#define PU_HCONSTRAIN 0x0002
|
|
#define PU_VCONSTRAIN 0x0004
|
|
#define PU_NONE 0x0000
|
|
#define PU_MOUSEBUTTON1DOWN 0x0008
|
|
#define PU_MOUSEBUTTON2DOWN 0x0010
|
|
#define PU_MOUSEBUTTON3DOWN 0x0018
|
|
#define PU_SELECTITEM 0x0020
|
|
#define PU_MOUSEBUTTON1 0x0040
|
|
#define PU_MOUSEBUTTON2 0x0080
|
|
#define PU_MOUSEBUTTON3 0x0100
|
|
#define PU_KEYBOARD 0x0200
|
|
|
|
typedef struct _MENUITEM
|
|
{
|
|
SHORT iPosition;
|
|
USHORT afStyle;
|
|
USHORT afAttribute;
|
|
USHORT id;
|
|
HWND hwndSubMenu;
|
|
ULONG hItem;
|
|
} MENUITEM;
|
|
typedef MENUITEM *PMENUITEM;
|
|
|
|
typedef struct _mti /* Note 1 */
|
|
{
|
|
USHORT afStyle;
|
|
USHORT pad;
|
|
USHORT idItem;
|
|
CHAR c[2];
|
|
} MTI;
|
|
|
|
typedef struct _mt /* Note 1 */
|
|
{
|
|
ULONG len;
|
|
USHORT codepage;
|
|
USHORT reserved;
|
|
USHORT cMti;
|
|
MTI rgMti[1];
|
|
} MT;
|
|
typedef MT *LPMT;
|
|
|
|
typedef struct _OWNERITEM
|
|
{
|
|
HWND hwnd;
|
|
HPS hps;
|
|
ULONG fsState;
|
|
ULONG fsAttribute;
|
|
ULONG fsStateOld;
|
|
ULONG fsAttributeOld;
|
|
RECTL rclItem;
|
|
LONG idItem;
|
|
ULONG hItem;
|
|
} OWNERITEM;
|
|
typedef OWNERITEM *POWNERITEM;
|
|
|
|
|
|
#define WinCheckMenuItem(hwndMenu,id,fcheck) \
|
|
((BOOL)WinSendMsg (hwndMenu, MM_SETITEMATTR, \
|
|
MPFROM2SHORT (id, TRUE), \
|
|
MPFROM2SHORT (MIA_CHECKED, \
|
|
((USHORT)(fcheck) ? MIA_CHECKED : 0))))
|
|
|
|
#define WinEnableMenuItem(hwndMenu,id,fEnable) \
|
|
((BOOL)WinSendMsg (hwndMenu, MM_SETITEMATTR, MPFROM2SHORT (id, TRUE), \
|
|
MPFROM2SHORT (MIA_DISABLED, \
|
|
((USHORT)(fEnable) ? 0 : MIA_DISABLED))))
|
|
|
|
#define WinIsMenuItemChecked(hwndMenu,id) \
|
|
((BOOL)WinSendMsg (hwndMenu, MM_QUERYITEMATTR, \
|
|
MPFROM2SHORT (id, TRUE), \
|
|
MPFROMLONG (MIA_CHECKED)))
|
|
|
|
#define WinIsMenuItemEnabled(hwndMenu,id) \
|
|
(!(BOOL)WinSendMsg (hwndMenu, MM_QUERYITEMATTR, \
|
|
MPFROM2SHORT (id, TRUE), \
|
|
MPFROMLONG (MIA_DISABLED)))
|
|
|
|
#define WinIsMenuItemValid(hwndMenu,id) \
|
|
((BOOL)WinSendMsg (hwndMenu, MM_ISITEMVALID, \
|
|
MPFROM2SHORT (id, TRUE), MPFROMLONG (FALSE)))
|
|
|
|
#define WinSetMenuItemText(hwndMenu,id,psz) \
|
|
((BOOL)WinSendMsg (hwndMenu, MM_SETITEMTEXT, \
|
|
MPFROMLONG (id), MPFROMP (psz)))
|
|
|
|
|
|
HWND WinCreateMenu (HWND hwndParent, CPVOID lpmt);
|
|
HWND WinLoadMenu (HWND hwndFrame, HMODULE hmod, ULONG idMenu);
|
|
BOOL WinPopupMenu (HWND hwndParent, HWND hwndOwner, HWND hwndMenu,
|
|
LONG x, LONG y, LONG idItem, ULONG fs);
|
|
|
|
#endif /* INCL_WINMENUS */
|
|
|
|
|
|
#if defined (INCL_WINMESSAGEMGR)
|
|
|
|
#define BMSG_POST 0x0000
|
|
#define BMSG_SEND 0x0001
|
|
#define BMSG_POSTQUEUE 0x0002
|
|
#define BMSG_DESCENDANTS 0x0004
|
|
#define BMSG_FRAMEONLY 0x0008
|
|
|
|
#define CVR_ALIGNLEFT 0x0001
|
|
#define CVR_ALIGNBOTTOM 0x0002
|
|
#define CVR_ALIGNRIGHT 0x0004
|
|
#define CVR_ALIGNTOP 0x0008
|
|
#define CVR_REDRAW 0x0010
|
|
|
|
#define HT_NORMAL 0
|
|
#define HT_TRANSPARENT (-1)
|
|
#define HT_DISCARD (-2)
|
|
#define HT_ERROR (-3)
|
|
|
|
#define QS_KEY 0x0001
|
|
#define QS_MOUSEBUTTON 0x0002
|
|
#define QS_MOUSEMOVE 0x0004
|
|
#define QS_MOUSE 0x0006
|
|
#define QS_TIMER 0x0008
|
|
#define QS_PAINT 0x0010
|
|
#define QS_POSTMSG 0x0020
|
|
#define QS_SEM1 0x0040
|
|
#define QS_SEM2 0x0080
|
|
#define QS_SEM3 0x0100
|
|
#define QS_SEM4 0x0200
|
|
#define QS_SENDMSG 0x0400
|
|
#define QS_MSGINPUT 0x0800
|
|
|
|
#define SMIM_ALL 0x0eff
|
|
#define SMI_NOINTEREST 0x0001
|
|
#define SMI_INTEREST 0x0002
|
|
#define SMI_RESET 0x0004
|
|
#define SMI_AUTODISPATCH 0x0008
|
|
|
|
#define WPM_TEXT 0x0001
|
|
#define WPM_CTLDATA 0x0002
|
|
#define WPM_PRESPARAMS 0x0004
|
|
#define WPM_CCHTEXT 0x0008
|
|
#define WPM_CBCTLDATA 0x0010
|
|
#define WPM_CBPRESPARAMS 0x0020
|
|
|
|
|
|
typedef struct _WNDPARAMS
|
|
{
|
|
ULONG fsStatus;
|
|
ULONG cchText;
|
|
PSZ pszText;
|
|
ULONG cbPresParams;
|
|
PVOID pPresParams;
|
|
ULONG cbCtlData;
|
|
PVOID pCtlData;
|
|
} WNDPARAMS;
|
|
typedef WNDPARAMS *PWNDPARAMS;
|
|
|
|
BOOL WinBroadcastMsg (HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2, ULONG rgf);
|
|
BOOL WinInSendMsg (HAB hab);
|
|
BOOL WinPostQueueMsg (HMQ hmq, ULONG msg, MPARAM mp1, MPARAM mp2);
|
|
BOOL WinQueryMsgPos (HAB hab, PPOINTL pptl);
|
|
ULONG WinQueryMsgTime (HAB hab);
|
|
ULONG WinQueryQueueStatus (HWND hwndDesktop);
|
|
ULONG WinRequestMutexSem (HMTX hmtx, ULONG ulTimeout);
|
|
BOOL WinSetClassMsgInterest (HAB hab, PCSZ pszClassName, ULONG msg_class,
|
|
LONG control);
|
|
BOOL WinSetMsgInterest (HWND hwnd, ULONG msg_class, LONG control);
|
|
ULONG WinWaitEventSem (HEV hev, ULONG ulTimeout);
|
|
BOOL WinWaitMsg (HAB hab, ULONG msgFirst, ULONG msgLast);
|
|
ULONG WinWaitMuxWaitSem (HMUX hmux, ULONG ulTimeout, PULONG pulUser);
|
|
|
|
#endif /* INCL_WINMESSAGEMGR */
|
|
|
|
|
|
#if defined (INCL_WINPALETTE)
|
|
|
|
LONG WinRealizePalette (HWND hwnd, HPS hps, PULONG pcclr);
|
|
|
|
#endif /* INCL_WINPALETTE */
|
|
|
|
|
|
#if defined (INCL_WINPOINTERS)
|
|
|
|
#define DP_NORMAL 0x0000
|
|
#define DP_HALFTONED 0x0001
|
|
#define DP_INVERTED 0x0002
|
|
#define DP_MINI 0x0004
|
|
|
|
#define SBMP_OLD_SYSMENU 1
|
|
#define SBMP_OLD_SBUPARROW 2
|
|
#define SBMP_OLD_SBDNARROW 3
|
|
#define SBMP_OLD_SBRGARROW 4
|
|
#define SBMP_OLD_SBLFARROW 5
|
|
#define SBMP_MENUCHECK 6
|
|
#define SBMP_OLD_CHECKBOXES 7
|
|
#define SBMP_BTNCORNERS 8
|
|
#define SBMP_OLD_MINBUTTON 9
|
|
#define SBMP_OLD_MAXBUTTON 10
|
|
#define SBMP_OLD_RESTOREBUTTON 11
|
|
#define SBMP_OLD_CHILDSYSMENU 12
|
|
#define SBMP_DRIVE 15
|
|
#define SBMP_FILE 16
|
|
#define SBMP_FOLDER 17
|
|
#define SBMP_TREEPLUS 18
|
|
#define SBMP_TREEMINUS 19
|
|
#define SBMP_PROGRAM 22
|
|
#define SBMP_MENUATTACHED 23
|
|
#define SBMP_SIZEBOX 24
|
|
#define SBMP_SYSMENU 25
|
|
#define SBMP_MINBUTTON 26
|
|
#define SBMP_MAXBUTTON 27
|
|
#define SBMP_RESTOREBUTTON 28
|
|
#define SBMP_CHILDSYSMENU 29
|
|
#define SBMP_SYSMENUDEP 30
|
|
#define SBMP_MINBUTTONDEP 31
|
|
#define SBMP_MAXBUTTONDEP 32
|
|
#define SBMP_RESTOREBUTTONDEP 33
|
|
#define SBMP_CHILDSYSMENUDEP 34
|
|
#define SBMP_SBUPARROW 35
|
|
#define SBMP_SBDNARROW 36
|
|
#define SBMP_SBLFARROW 37
|
|
#define SBMP_SBRGARROW 38
|
|
#define SBMP_SBUPARROWDEP 39
|
|
#define SBMP_SBDNARROWDEP 40
|
|
#define SBMP_SBLFARROWDEP 41
|
|
#define SBMP_SBRGARROWDEP 42
|
|
#define SBMP_SBUPARROWDIS 43
|
|
#define SBMP_SBDNARROWDIS 44
|
|
#define SBMP_SBLFARROWDIS 45
|
|
#define SBMP_SBRGARROWDIS 46
|
|
#define SBMP_COMBODOWN 47
|
|
#define SBMP_CHECKBOXES 48
|
|
#define SBMP_HIDE 50
|
|
#define SBMP_HIDEDEP 51
|
|
#define SBMP_CLOSE 52
|
|
#define SBMP_CLOSEDEP 53
|
|
|
|
#define SPTR_ARROW 1
|
|
#define SPTR_TEXT 2
|
|
#define SPTR_WAIT 3
|
|
#define SPTR_SIZE 4
|
|
#define SPTR_MOVE 5
|
|
#define SPTR_SIZENWSE 6
|
|
#define SPTR_SIZENESW 7
|
|
#define SPTR_SIZEWE 8
|
|
#define SPTR_SIZENS 9
|
|
#define SPTR_APPICON 10
|
|
#define SPTR_ICONINFORMATION 11
|
|
#define SPTR_ICONQUESTION 12
|
|
#define SPTR_ICONERROR 13
|
|
#define SPTR_ICONWARNING 14
|
|
#define SPTR_ILLEGAL 18
|
|
#define SPTR_FILE 19
|
|
#define SPTR_FOLDER 20
|
|
#define SPTR_MULTFILE 21
|
|
#define SPTR_PROGRAM 22
|
|
#define SPTR_DISPLAY_PTRS 22
|
|
|
|
#define SPTR_PENFIRST 23
|
|
#define SPTR_PENLAST 39
|
|
#define SPTR_CPTR 39
|
|
|
|
#define SPTR_HANDICON SPTR_ICONERROR
|
|
#define SPTR_QUESICON SPTR_ICONQUESTION
|
|
#define SPTR_BANGICON SPTR_ICONWARNING
|
|
#define SPTR_NOTEICON SPTR_ICONINFORMATION
|
|
|
|
typedef struct _POINTERINFO
|
|
{
|
|
ULONG fPointer;
|
|
LONG xHotspot;
|
|
LONG yHotspot;
|
|
HBITMAP hbmPointer;
|
|
HBITMAP hbmColor;
|
|
HBITMAP hbmMiniPointer;
|
|
HBITMAP hbmMiniColor;
|
|
} POINTERINFO;
|
|
typedef POINTERINFO *PPOINTERINFO;
|
|
|
|
|
|
HPOINTER WinCreatePointer (HWND hwndDesktop, HBITMAP hbmPointer, BOOL fPointer,
|
|
LONG xHotspot, LONG yHotspot);
|
|
HPOINTER WinCreatePointerIndirect (HWND hwndDesktop,
|
|
__const__ POINTERINFO *pptri);
|
|
BOOL WinDestroyPointer (HPOINTER hptr);
|
|
BOOL WinDrawPointer (HPS hps, LONG x, LONG y, HPOINTER hptr, ULONG fs);
|
|
HBITMAP WinGetSysBitmap (HWND hwndDesktop, ULONG ibm);
|
|
HPOINTER WinLoadPointer (HWND hwndDesktop, HMODULE hmod, ULONG idres);
|
|
BOOL WinLockPointerUpdate (HWND hwndDesktop, HPOINTER hptrNew,
|
|
ULONG ulTimeInterval);
|
|
BOOL WinQueryPointerPos (HWND hwndDesktop, PPOINTL pptl);
|
|
BOOL WinQueryPointerInfo (HPOINTER hptr, PPOINTERINFO pPointerInfo);
|
|
HPOINTER WinQuerySysPointer (HWND hwndDesktop, LONG lId, BOOL fCopy);
|
|
BOOL WinQuerySysPointerData (HWND hwndDesktop, ULONG ulId,
|
|
PICONINFO pIconInfo);
|
|
BOOL WinSetPointer (HWND hwndDesktop, HPOINTER hptrNew);
|
|
BOOL WinSetPointerOwner (HPOINTER hptr, PID pid, BOOL fDestroy);
|
|
BOOL WinSetPointerPos (HWND hwndDesktop, LONG x, LONG y);
|
|
BOOL WinSetSysPointerData (HWND hwndDesktop, ULONG ulId,
|
|
__const__ ICONINFO *pIconInfo);
|
|
BOOL WinShowPointer (HWND hwndDesktop, BOOL fShow);
|
|
|
|
#endif /* INCL_WINPOINTERS */
|
|
|
|
|
|
#if defined (INCL_WINRECTANGLES)
|
|
|
|
BOOL WinCopyRect (HAB hab, PRECTL prclDst, __const__ RECTL *prclSrc);
|
|
BOOL WinEqualRect (HAB hab, __const__ RECTL *prcl1, __const__ RECTL *prcl2);
|
|
BOOL WinInflateRect (HAB hab, PRECTL prcl, LONG cx, LONG cy);
|
|
BOOL WinIntersectRect (HAB hab, PRECTL prclDst, __const__ RECTL *prclSrc1,
|
|
__const__ RECTL *prclSrc2);
|
|
BOOL WinIsRectEmpty (HAB hab, __const__ RECTL *prcl);
|
|
BOOL WinMakePoints (HAB hab, PPOINTL pwpt, ULONG cwpt);
|
|
BOOL WinMakeRect (HAB hab, PRECTL pwrc);
|
|
BOOL WinOffsetRect (HAB hab, PRECTL prcl, LONG cx, LONG cy);
|
|
BOOL WinPtInRect (HAB hab, __const__ RECTL *prcl, __const__ POINTL *pptl);
|
|
BOOL WinSetRect (HAB hab, PRECTL prcl, LONG xLeft, LONG yBottom, LONG xRight,
|
|
LONG yTop);
|
|
BOOL WinSetRectEmpty (HAB hab, PRECTL prcl);
|
|
BOOL WinSubtractRect (HAB hab, PRECTL prclDst, __const__ RECTL *prclSrc1,
|
|
__const__ RECTL *prclSrc2);
|
|
BOOL WinUnionRect (HAB hab, PRECTL prclDst, __const__ RECTL *prclSrc1,
|
|
__const__ RECTL *prclSrc2);
|
|
|
|
#endif /* INCL_WINRECTANGLES */
|
|
|
|
|
|
#if defined (INCL_WINSCROLLBARS)
|
|
|
|
#define SB_LINEUP 1
|
|
#define SB_LINEDOWN 2
|
|
#define SB_LINELEFT 1
|
|
#define SB_LINERIGHT 2
|
|
#define SB_PAGEUP 3
|
|
#define SB_PAGEDOWN 4
|
|
#define SB_PAGELEFT 3
|
|
#define SB_PAGERIGHT 4
|
|
#define SB_SLIDERTRACK 5
|
|
#define SB_SLIDERPOSITION 6
|
|
#define SB_ENDSCROLL 7
|
|
|
|
#define SBM_SETSCROLLBAR 0x01a0
|
|
#define SBM_SETPOS 0x01a1
|
|
#define SBM_QUERYPOS 0x01a2
|
|
#define SBM_QUERYRANGE 0x01a3
|
|
#define SBM_SETTHUMBSIZE 0x01a6
|
|
|
|
#define SBS_HORZ 0
|
|
#define SBS_VERT 1
|
|
#define SBS_THUMBSIZE 2
|
|
#define SBS_AUTOTRACK 4
|
|
#define SBS_AUTOSIZE 0x2000
|
|
|
|
typedef struct _SBCDATA
|
|
{
|
|
USHORT cb;
|
|
USHORT sHilite;
|
|
SHORT posFirst;
|
|
SHORT posLast;
|
|
SHORT posThumb;
|
|
SHORT cVisible;
|
|
SHORT cTotal;
|
|
} SBCDATA;
|
|
typedef SBCDATA *PSBCDATA;
|
|
|
|
#endif /* INCL_WINSCROLLBARS */
|
|
|
|
|
|
#if defined (INCL_WINSTATICS)
|
|
|
|
#define SM_SETHANDLE 0x0100
|
|
#define SM_QUERYHANDLE 0x0101
|
|
|
|
#define SS_TEXT 0x0001
|
|
#define SS_GROUPBOX 0x0002
|
|
#define SS_ICON 0x0003
|
|
#define SS_BITMAP 0x0004
|
|
#define SS_FGNDRECT 0x0005
|
|
#define SS_HALFTONERECT 0x0006
|
|
#define SS_BKGNDRECT 0x0007
|
|
#define SS_FGNDFRAME 0x0008
|
|
#define SS_HALFTONEFRAME 0x0009
|
|
#define SS_BKGNDFRAME 0x000a
|
|
#define SS_SYSICON 0x000b
|
|
#define SS_AUTOSIZE 0x0040
|
|
|
|
#define WM_MSGBOXINIT 0x010e
|
|
#define WM_MSGBOXDISMISS 0x010f
|
|
|
|
#endif /* INCL_WINSTATICS */
|
|
|
|
|
|
#if defined (INCL_WINSYS)
|
|
|
|
#define CCF_GLOBAL 0x0000
|
|
#define CCF_APPLICATION 0x0001
|
|
#define CCF_COUNTCOLORS 0x0010
|
|
#define CCF_ALLCOLORS 0x0020
|
|
|
|
#define CCI_FOREGROUND 1
|
|
#define CCI_FOREGROUNDREADONLY 2
|
|
#define CCI_BACKGROUND 3
|
|
#define CCI_BACKGROUNDDIALOG 4
|
|
#define CCI_DISABLEDFOREGROUND 5
|
|
#define CCI_DISABLEDFOREGROUNDREADONLY 6
|
|
#define CCI_DISABLEDBACKGROUND 7
|
|
#define CCI_DISABLEDBACKGROUNDDIALOG 8
|
|
#define CCI_HIGHLIGHTFOREGROUND 9
|
|
#define CCI_HIGHLIGHTBACKGROUND 10
|
|
#define CCI_HIGHLIGHTBACKGROUNDDIALOG 11
|
|
#define CCI_INACTIVEFOREGROUND 12
|
|
#define CCI_INACTIVEFOREGROUNDDIALOG 13
|
|
#define CCI_INACTIVEBACKGROUND 14
|
|
#define CCI_INACTIVEBACKGROUNDTEXT 15
|
|
#define CCI_ACTIVEFOREGROUND 16
|
|
#define CCI_ACTIVEFOREGROUNDDIALOG 17
|
|
#define CCI_ACTIVEBACKGROUND 18
|
|
#define CCI_ACTIVEBACKGROUNDTEXT 19
|
|
#define CCI_PAGEBACKGROUND 20
|
|
#define CCI_PAGEFOREGROUND 21
|
|
#define CCI_FIELDBACKGROUND 22
|
|
#define CCI_BORDER 23
|
|
#define CCI_BORDERLIGHT 24
|
|
#define CCI_BORDERDARK 25
|
|
#define CCI_BORDER2 26
|
|
#define CCI_BORDER2LIGHT 27
|
|
#define CCI_BORDER2DARK 28
|
|
#define CCI_BORDERDEFAULT 29
|
|
#define CCI_BUTTONBACKGROUND 30
|
|
#define CCI_BUTTONFOREGROUND 31
|
|
#define CCI_BUTTONBORDERLIGHT 32
|
|
#define CCI_BUTTONBORDERDARK 33
|
|
#define CCI_ARROW 34
|
|
#define CCI_DISABLEDARROW 35
|
|
#define CCI_ARROWBORDERLIGHT 36
|
|
#define CCI_ARROWBORDERDARK 37
|
|
#define CCI_CHECKLIGHT 38
|
|
#define CCI_CHECKMIDDLE 39
|
|
#define CCI_CHECKDARK 40
|
|
#define CCI_ICONFOREGROUND 41
|
|
#define CCI_ICONBACKGROUND 42
|
|
#define CCI_ICONBACKGROUNDDESKTOP 43
|
|
#define CCI_ICONHILITEFOREGROUND 44
|
|
#define CCI_ICONHILITEBACKGROUND 45
|
|
#define CCI_MAJORTABFOREGROUND 46
|
|
#define CCI_MAJORTABBACKGROUND 47
|
|
#define CCI_MINORTABFOREGROUND 48
|
|
#define CCI_MINORTABBACKGROUND 49
|
|
#define CCI_MAXINDEX 49
|
|
|
|
#define CCT_STATIC 1
|
|
#define CCT_STATICTEXT 2
|
|
#define CCT_GROUPBOX 3
|
|
#define CCT_PUSHBUTTON 4
|
|
#define CCT_CHECKBOX 5
|
|
#define CCT_RADIOBUTTON 6
|
|
#define CCT_ENTRYFIELD 7
|
|
#define CCT_LISTBOX 8
|
|
#define CCT_COMBOBOX 9
|
|
#define CCT_SCROLLBAR 10
|
|
#define CCT_FRAME 11
|
|
#define CCT_MENU 12
|
|
#define CCT_TITLEBAR 13
|
|
#define CCT_SPINBUTTON 14
|
|
#define CCT_SLIDER 15
|
|
#define CCT_CIRCULARSLIDER 16
|
|
#define CCT_VALUESET 17
|
|
#define CCT_MLE 18
|
|
#define CCT_CONTAINER 19
|
|
#define CCT_NOTEBOOK 20
|
|
#define CCT_MAXTYPE 20
|
|
|
|
#define CCV_NOTFOUND (-1)
|
|
#define CCV_IGNORE (-2)
|
|
#define CCV_DEFAULT (-3)
|
|
|
|
#define PP_FOREGROUNDCOLOR 1
|
|
#define PP_FOREGROUNDCOLORINDEX 2
|
|
#define PP_BACKGROUNDCOLOR 3
|
|
#define PP_BACKGROUNDCOLORINDEX 4
|
|
#define PP_HILITEFOREGROUNDCOLOR 5
|
|
#define PP_HILITEFOREGROUNDCOLORINDEX 6
|
|
#define PP_HILITEBACKGROUNDCOLOR 7
|
|
#define PP_HILITEBACKGROUNDCOLORINDEX 8
|
|
#define PP_DISABLEDFOREGROUNDCOLOR 9
|
|
#define PP_DISABLEDFOREGROUNDCOLORINDEX 10
|
|
#define PP_DISABLEDBACKGROUNDCOLOR 11
|
|
#define PP_DISABLEDBACKGROUNDCOLORINDEX 12
|
|
#define PP_BORDERCOLOR 13
|
|
#define PP_BORDERCOLORINDEX 14
|
|
#define PP_FONTNAMESIZE 15
|
|
#define PP_FONTHANDLE 16
|
|
#define PP_RESERVED 17
|
|
#define PP_ACTIVECOLOR 18
|
|
#define PP_ACTIVECOLORINDEX 19
|
|
#define PP_INACTIVECOLOR 20
|
|
#define PP_INACTIVECOLORINDEX 21
|
|
#define PP_ACTIVETEXTFGNDCOLOR 22
|
|
#define PP_ACTIVETEXTFGNDCOLORINDEX 23
|
|
#define PP_ACTIVETEXTBGNDCOLOR 24
|
|
#define PP_ACTIVETEXTBGNDCOLORINDEX 25
|
|
#define PP_INACTIVETEXTFGNDCOLOR 26
|
|
#define PP_INACTIVETEXTFGNDCOLORINDEX 27
|
|
#define PP_INACTIVETEXTBGNDCOLOR 28
|
|
#define PP_INACTIVETEXTBGNDCOLORINDEX 29
|
|
#define PP_SHADOW 30
|
|
#define PP_MENUFOREGROUNDCOLOR 31
|
|
#define PP_MENUFOREGROUNDCOLORINDEX 32
|
|
#define PP_MENUBACKGROUNDCOLOR 33
|
|
#define PP_MENUBACKGROUNDCOLORINDEX 34
|
|
#define PP_MENUHILITEFGNDCOLOR 35
|
|
#define PP_MENUHILITEFGNDCOLORINDEX 36
|
|
#define PP_MENUHILITEBGNDCOLOR 37
|
|
#define PP_MENUHILITEBGNDCOLORINDEX 38
|
|
#define PP_MENUDISABLEDFGNDCOLOR 39
|
|
#define PP_MENUDISABLEDFGNDCOLORINDEX 40
|
|
#define PP_MENUDISABLEDBGNDCOLOR 41
|
|
#define PP_MENUDISABLEDBGNDCOLORINDEX 42
|
|
#define PP_SHADOWTEXTCOLOR 43
|
|
#define PP_SHADOWTEXTCOLORINDEX 44
|
|
#define PP_SHADOWHILITEFGNDCOLOR 45
|
|
#define PP_SHADOWHILITEFGNDCOLORINDEX 46
|
|
#define PP_SHADOWHILITEBGNDCOLOR 47
|
|
#define PP_SHADOWHILITEBGNDCOLORINDEX 48
|
|
#define PP_ICONTEXTBACKGROUNDCOLOR 49
|
|
#define PP_ICONTEXTBACKGROUNDCOLORINDEX 50
|
|
#define PP_BORDERLIGHTCOLOR 51
|
|
#define PP_BORDERDARKCOLOR 52
|
|
#define PP_BORDER2COLOR 53
|
|
#define PP_BORDER2LIGHTCOLOR 54
|
|
#define PP_BORDER2DARKCOLOR 55
|
|
#define PP_BORDERDEFAULTCOLOR 56
|
|
#define PP_FIELDBACKGROUNDCOLOR 57
|
|
#define PP_BUTTONBACKGROUNDCOLOR 58
|
|
#define PP_BUTTONBORDERLIGHTCOLOR 59
|
|
#define PP_BUTTONBORDERDARKCOLOR 60
|
|
#define PP_ARROWCOLOR 61
|
|
#define PP_ARROWBORDERLIGHTCOLOR 62
|
|
#define PP_ARROWBORDERDARKCOLOR 63
|
|
#define PP_ARROWDISABLEDCOLOR 64
|
|
#define PP_CHECKLIGHTCOLOR 65
|
|
#define PP_CHECKMIDDLECOLOR 66
|
|
#define PP_CHECKDARKCOLOR 67
|
|
#define PP_PAGEFOREGROUNDCOLOR 68
|
|
#define PP_PAGEBACKGROUNDCOLOR 69
|
|
#define PP_MAJORTABFOREGROUNDCOLOR 70
|
|
#define PP_MAJORTABBACKGROUNDCOLOR 71
|
|
#define PP_MINORTABFOREGROUNDCOLOR 72
|
|
#define PP_MINORTABBACKGROUNDCOLOR 73
|
|
|
|
#define PP_BIDI_FIRST 0x0100
|
|
#define PP_BIDI_LAST 0x012f
|
|
#define PP_USER 0x8000
|
|
|
|
#define QPF_NOINHERIT 0x0001
|
|
#define QPF_ID1COLORINDEX 0x0002
|
|
#define QPF_ID2COLORINDEX 0x0004
|
|
#define QPF_PURERGBCOLOR 0x0008
|
|
#define QPF_VALIDFLAGS 0x000f
|
|
|
|
#define SV_SWAPBUTTON 0
|
|
#define SV_DBLCLKTIME 1
|
|
#define SV_CXDBLCLK 2
|
|
#define SV_CYDBLCLK 3
|
|
#define SV_CXSIZEBORDER 4
|
|
#define SV_CYSIZEBORDER 5
|
|
#define SV_ALARM 6
|
|
#define SV_CURSORRATE 9
|
|
#define SV_FIRSTSCROLLRATE 10
|
|
#define SV_SCROLLRATE 11
|
|
#define SV_NUMBEREDLISTS 12
|
|
#define SV_WARNINGFREQ 13
|
|
#define SV_NOTEFREQ 14
|
|
#define SV_ERRORFREQ 15
|
|
#define SV_WARNINGDURATION 16
|
|
#define SV_NOTEDURATION 17
|
|
#define SV_ERRORDURATION 18
|
|
#define SV_CXSCREEN 20
|
|
#define SV_CYSCREEN 21
|
|
#define SV_CXVSCROLL 22
|
|
#define SV_CYHSCROLL 23
|
|
#define SV_CYVSCROLLARROW 24
|
|
#define SV_CXHSCROLLARROW 25
|
|
#define SV_CXBORDER 26
|
|
#define SV_CYBORDER 27
|
|
#define SV_CXDLGFRAME 28
|
|
#define SV_CYDLGFRAME 29
|
|
#define SV_CYTITLEBAR 30
|
|
#define SV_CYVSLIDER 31
|
|
#define SV_CXHSLIDER 32
|
|
#define SV_CXMINMAXBUTTON 33
|
|
#define SV_CYMINMAXBUTTON 34
|
|
#define SV_CYMENU 35
|
|
#define SV_CXFULLSCREEN 36
|
|
#define SV_CYFULLSCREEN 37
|
|
#define SV_CXICON 38
|
|
#define SV_CYICON 39
|
|
#define SV_CXPOINTER 40
|
|
#define SV_CYPOINTER 41
|
|
#define SV_DEBUG 42
|
|
#define SV_CMOUSEBUTTONS 43
|
|
#define SV_CPOINTERBUTTONS 43
|
|
#define SV_POINTERLEVEL 44
|
|
#define SV_CURSORLEVEL 45
|
|
#define SV_TRACKRECTLEVEL 46
|
|
#define SV_CTIMERS 47
|
|
#define SV_MOUSEPRESENT 48
|
|
#define SV_CXBYTEALIGN 49
|
|
#define SV_CXALIGN 49
|
|
#define SV_CYBYTEALIGN 50
|
|
#define SV_CYALIGN 50
|
|
#define SV_DESKTOPWORKAREAYTOP 51
|
|
#define SV_DESKTOPWORKAREAYBOTTOM 52
|
|
#define SV_DESKTOPWORKAREAXRIGHT 53
|
|
#define SV_DESKTOPWORKAREAXLEFT 54
|
|
#define SV_NOTRESERVED 56
|
|
#define SV_EXTRAKEYBEEP 57
|
|
#define SV_SETLIGHTS 58
|
|
#define SV_INSERTMODE 59
|
|
#define SV_MENUROLLDOWNDELAY 64
|
|
#define SV_MENUROLLUPDELAY 65
|
|
#define SV_ALTMNEMONIC 66
|
|
#define SV_TASKLISTMOUSEACCESS 67
|
|
#define SV_CXICONTEXTWIDTH 68
|
|
#define SV_CICONTEXTLINES 69
|
|
#define SV_CHORDTIME 70
|
|
#define SV_CXCHORD 71
|
|
#define SV_CYCHORD 72
|
|
#define SV_CXMOTIONSTART 73
|
|
#define SV_CYMOTIONSTART 74
|
|
#define SV_BEGINDRAG 75
|
|
#define SV_ENDDRAG 76
|
|
#define SV_SINGLESELECT 77
|
|
#define SV_OPEN 78
|
|
#define SV_CONTEXTMENU 79
|
|
#define SV_CONTEXTHELP 80
|
|
#define SV_TEXTEDIT 81
|
|
#define SV_BEGINSELECT 82
|
|
#define SV_ENDSELECT 83
|
|
#define SV_BEGINDRAGKB 84
|
|
#define SV_ENDDRAGKB 85
|
|
#define SV_SELECTKB 86
|
|
#define SV_OPENKB 87
|
|
#define SV_CONTEXTMENUKB 88
|
|
#define SV_CONTEXTHELPKB 89
|
|
#define SV_TEXTEDITKB 90
|
|
#define SV_BEGINSELECTKB 91
|
|
#define SV_ENDSELECTKB 92
|
|
#define SV_ANIMATION 93
|
|
#define SV_ANIMATIONSPEED 94
|
|
#define SV_MONOICONS 95
|
|
#define SV_KBDALTERED 96
|
|
#define SV_PRINTSCREEN 97
|
|
#define SV_LOCKSTARTINPUT 98
|
|
#define SV_DYNAMICDRAG 99
|
|
#define SV_CSYSVALUES 100
|
|
|
|
#define SYSCLR_SHADOWHILITEBGND (-50)
|
|
#define SYSCLR_SHADOWHILITEFGND (-49)
|
|
#define SYSCLR_SHADOWTEXT (-48)
|
|
#define SYSCLR_ENTRYFIELD (-47)
|
|
#define SYSCLR_MENUDISABLEDTEXT (-46)
|
|
#define SYSCLR_MENUHILITE (-45)
|
|
#define SYSCLR_MENUHILITEBGND (-44)
|
|
#define SYSCLR_PAGEBACKGROUND (-43)
|
|
#define SYSCLR_FIELDBACKGROUND (-42)
|
|
#define SYSCLR_BUTTONLIGHT (-41)
|
|
#define SYSCLR_BUTTONMIDDLE (-40)
|
|
#define SYSCLR_BUTTONDARK (-39)
|
|
#define SYSCLR_BUTTONDEFAULT (-38)
|
|
#define SYSCLR_TITLEBOTTOM (-37)
|
|
#define SYSCLR_SHADOW (-36)
|
|
#define SYSCLR_ICONTEXT (-35)
|
|
#define SYSCLR_DIALOGBACKGROUND (-34)
|
|
#define SYSCLR_HILITEFOREGROUND (-33)
|
|
#define SYSCLR_HILITEBACKGROUND (-32)
|
|
#define SYSCLR_INACTIVETITLETEXTBGND (-31)
|
|
#define SYSCLR_ACTIVETITLETEXTBGND (-30)
|
|
#define SYSCLR_INACTIVETITLETEXT (-29)
|
|
#define SYSCLR_ACTIVETITLETEXT (-28)
|
|
#define SYSCLR_OUTPUTTEXT (-27)
|
|
#define SYSCLR_WINDOWSTATICTEXT (-26)
|
|
#define SYSCLR_SCROLLBAR (-25)
|
|
#define SYSCLR_BACKGROUND (-24)
|
|
#define SYSCLR_ACTIVETITLE (-23)
|
|
#define SYSCLR_INACTIVETITLE (-22)
|
|
#define SYSCLR_MENU (-21)
|
|
#define SYSCLR_WINDOW (-20)
|
|
#define SYSCLR_WINDOWFRAME (-19)
|
|
#define SYSCLR_MENUTEXT (-18)
|
|
#define SYSCLR_WINDOWTEXT (-17)
|
|
#define SYSCLR_TITLETEXT (-16)
|
|
#define SYSCLR_ACTIVEBORDER (-15)
|
|
#define SYSCLR_INACTIVEBORDER (-14)
|
|
#define SYSCLR_APPWORKSPACE (-13)
|
|
#define SYSCLR_HELPBACKGROUND (-12)
|
|
#define SYSCLR_HELPTEXT (-11)
|
|
#define SYSCLR_HELPHILITE (-10)
|
|
|
|
#define SYSCLR_CSYSCOLORS 41
|
|
|
|
#define WM_CTLCOLORCHANGE 0x0129
|
|
#define WM_QUERYCTLTYPE 0x0130 /*0x012a?*/
|
|
|
|
|
|
typedef struct _CTLCOLOR
|
|
{
|
|
LONG clrIndex;
|
|
LONG clrValue;
|
|
} CTLCOLOR;
|
|
typedef CTLCOLOR *PCTLCOLOR;
|
|
|
|
typedef struct _PARAM
|
|
{
|
|
ULONG id;
|
|
ULONG cb;
|
|
BYTE ab[1];
|
|
} PARAM;
|
|
typedef PARAM *NPPARAM;
|
|
typedef PARAM *PPARAM;
|
|
|
|
typedef struct _PRESPARAMS
|
|
{
|
|
ULONG cb;
|
|
PARAM aparam[1];
|
|
} PRESPARAMS;
|
|
typedef PRESPARAMS *NPPRESPARAMS;
|
|
typedef PRESPARAMS *PPRESPARAMS;
|
|
|
|
|
|
LONG WinQueryControlColors (HWND hwnd, LONG clrType, ULONG flCtlColor,
|
|
ULONG cCtlColor, PCTLCOLOR pCtlColor);
|
|
ULONG WinQueryPresParam (HWND hwnd, ULONG id1, ULONG id2, PULONG pulId,
|
|
ULONG cbBuf, PVOID pbBuf, ULONG fs);
|
|
LONG WinQuerySysColor (HWND hwndDesktop, LONG clr, LONG lReserved);
|
|
LONG WinQuerySysValue (HWND hwndDesktop, LONG iSysValue);
|
|
BOOL WinRemovePresParam (HWND hwnd, ULONG id);
|
|
LONG WinSetControlColors (HWND hwnd, LONG clrType, ULONG flCtlColor,
|
|
ULONG cCtlColor, PCTLCOLOR pCtlColor);
|
|
BOOL WinSetPresParam (HWND hwnd, ULONG id, ULONG cbParam, PVOID pbParam);
|
|
BOOL WinSetSysColors (HWND hwndDesktop, ULONG flOptions, ULONG flFormat,
|
|
LONG clrFirst, ULONG cclr, __const__ LONG *pclr);
|
|
BOOL WinSetSysValue (HWND hwndDesktop, LONG iSysValue, LONG lValue);
|
|
|
|
#endif /* INCL_WINSYS */
|
|
|
|
|
|
#if defined (INCL_WINTHUNKAPI)
|
|
|
|
PFN WinQueryClassThunkProc (PCSZ pszClassname);
|
|
LONG WinQueryWindowModel (HWND hwnd);
|
|
PFN WinQueryWindowThunkProc (HWND hwnd);
|
|
BOOL WinSetClassThunkProc (PCSZ pszClassname, PFN pfnThunkProc);
|
|
BOOL WinSetWindowThunkProc (HWND hwnd, PFN pfnThunkProc);
|
|
|
|
#endif /* INCL_WINTHUNKAPI */
|
|
|
|
|
|
#if defined (INCL_WINTIMER)
|
|
|
|
#define TID_CURSOR 0xffff
|
|
#define TID_SCROLL 0xfffe
|
|
#define TID_FLASHWINDOW 0xfffd
|
|
#define TID_USERMAX 0x7fff
|
|
|
|
ULONG WinGetCurrentTime (HAB hab);
|
|
ULONG WinStartTimer (HAB hab, HWND hwnd, ULONG idTimer, ULONG dtTimeout);
|
|
BOOL WinStopTimer (HAB hab, HWND hwnd, ULONG idTimer);
|
|
|
|
#endif /* INCL_WINTIMER */
|
|
|
|
#if defined (INCL_WINTRACKRECT)
|
|
|
|
#define TF_LEFT 0x0001
|
|
#define TF_TOP 0x0002
|
|
#define TF_RIGHT 0x0004
|
|
#define TF_BOTTOM 0x0008
|
|
#define TF_SETPOINTERPOS 0x0010
|
|
#define TF_GRID 0x0020
|
|
#define TF_STANDARD 0x0040
|
|
#define TF_ALLINBOUNDARY 0x0080
|
|
#define TF_VALIDATETRACKRECT 0x0100
|
|
#define TF_PARTINBOUNDARY 0x0200
|
|
|
|
#define TF_MOVE 0x000f
|
|
|
|
typedef struct _TRACKINFO
|
|
{
|
|
LONG cxBorder;
|
|
LONG cyBorder;
|
|
LONG cxGrid;
|
|
LONG cyGrid;
|
|
LONG cxKeyboard;
|
|
LONG cyKeyboard;
|
|
RECTL rclTrack;
|
|
RECTL rclBoundary;
|
|
POINTL ptlMinTrackSize;
|
|
POINTL ptlMaxTrackSize;
|
|
ULONG fs;
|
|
} TRACKINFO;
|
|
typedef TRACKINFO *PTRACKINFO;
|
|
|
|
BOOL WinShowTrackRect (HWND hwnd, BOOL fShow);
|
|
BOOL WinTrackRect (HWND hwnd, HPS hps, PTRACKINFO pti);
|
|
|
|
#endif /* INCL_WINTRACKRECT */
|
|
|
|
/* -------------------- MULTIPLE LINE ENTRIES ----------------------------- */
|
|
|
|
#if defined (INCL_WINMLE)
|
|
|
|
#define MLS_WORDWRAP 0x0001
|
|
#define MLS_BORDER 0x0002
|
|
#define MLS_VSCROLL 0x0004
|
|
#define MLS_HSCROLL 0x0008
|
|
#define MLS_READONLY 0x0010
|
|
#define MLS_IGNORETAB 0x0020
|
|
#define MLS_DISABLEUNDO 0x0040
|
|
|
|
#define MLFFMTRECT_FORMATRECT 0x0007
|
|
#define MLFFMTRECT_LIMITHORZ 0x0001
|
|
#define MLFFMTRECT_LIMITVERT 0x0002
|
|
#define MLFFMTRECT_MATCHWINDOW 0x0004
|
|
|
|
#define MLFIE_CFTEXT 0
|
|
#define MLFIE_NOTRANS 1
|
|
#define MLFIE_WINFMT 2
|
|
#define MLFIE_RTF 3
|
|
|
|
#define MLFEFR_RESIZE 0x0001
|
|
#define MLFEFR_TABSTOP 0x0002
|
|
#define MLFEFR_FONT 0x0004
|
|
#define MLFEFR_TEXT 0x0008
|
|
#define MLFEFR_WORDWRAP 0x0010
|
|
#define MLFETL_TEXTBYTES 0x0020
|
|
|
|
#define MLFMARGIN_LEFT 0x0001
|
|
#define MLFMARGIN_BOTTOM 0x0002
|
|
#define MLFMARGIN_RIGHT 0x0003
|
|
#define MLFMARGIN_TOP 0x0004
|
|
|
|
#define MLFQS_MINMAXSEL 0
|
|
#define MLFQS_MINSEL 1
|
|
#define MLFQS_MAXSEL 2
|
|
#define MLFQS_ANCHORSEL 3
|
|
#define MLFQS_CURSORSEL 4
|
|
|
|
#define MLFCLPBD_TOOMUCHTEXT 0x0001
|
|
#define MLFCLPBD_ERROR 0x0002
|
|
|
|
#define MLFSEARCH_CASESENSITIVE 0x0001
|
|
#define MLFSEARCH_SELECTMATCH 0x0002
|
|
#define MLFSEARCH_CHANGEALL 0x0004
|
|
|
|
#define MLM_SETTEXTLIMIT 0x01b0
|
|
#define MLM_QUERYTEXTLIMIT 0x01b1
|
|
#define MLM_SETFORMATRECT 0x01b2
|
|
#define MLM_QUERYFORMATRECT 0x01b3
|
|
#define MLM_SETWRAP 0x01b4
|
|
#define MLM_QUERYWRAP 0x01b5
|
|
#define MLM_SETTABSTOP 0x01b6
|
|
#define MLM_QUERYTABSTOP 0x01b7
|
|
#define MLM_SETREADONLY 0x01b8
|
|
#define MLM_QUERYREADONLY 0x01b9
|
|
|
|
#define MLM_QUERYCHANGED 0x01ba
|
|
#define MLM_SETCHANGED 0x01bb
|
|
#define MLM_QUERYLINECOUNT 0x01bc
|
|
#define MLM_CHARFROMLINE 0x01bd
|
|
#define MLM_LINEFROMCHAR 0x01be
|
|
#define MLM_QUERYLINELENGTH 0x01bf
|
|
#define MLM_QUERYTEXTLENGTH 0x01c0
|
|
|
|
#define MLM_FORMAT 0x01c1
|
|
#define MLM_SETIMPORTEXPORT 0x01c2
|
|
#define MLM_IMPORT 0x01c3
|
|
#define MLM_EXPORT 0x01c4
|
|
#define MLM_DELETE 0x01c6
|
|
#define MLM_QUERYFORMATLINELENGTH 0x01c7
|
|
#define MLM_QUERYFORMATTEXTLENGTH 0x01c8
|
|
#define MLM_INSERT 0x01c9
|
|
|
|
#define MLM_SETSEL 0x01ca
|
|
#define MLM_QUERYSEL 0x01cb
|
|
#define MLM_QUERYSELTEXT 0x01cc
|
|
|
|
#define MLM_QUERYUNDO 0x01cd
|
|
#define MLM_UNDO 0x01ce
|
|
#define MLM_RESETUNDO 0x01cf
|
|
|
|
#define MLM_QUERYFONT 0x01d0
|
|
#define MLM_SETFONT 0x01d1
|
|
#define MLM_SETTEXTCOLOR 0x01d2
|
|
#define MLM_QUERYTEXTCOLOR 0x01d3
|
|
#define MLM_SETBACKCOLOR 0x01d4
|
|
#define MLM_QUERYBACKCOLOR 0x01d5
|
|
|
|
#define MLM_QUERYFIRSTCHAR 0x01d6
|
|
#define MLM_SETFIRSTCHAR 0x01d7
|
|
|
|
#define MLM_CUT 0x01d8
|
|
#define MLM_COPY 0x01d9
|
|
#define MLM_PASTE 0x01da
|
|
#define MLM_CLEAR 0x01db
|
|
|
|
#define MLM_ENABLEREFRESH 0x01dc
|
|
#define MLM_DISABLEREFRESH 0x01dd
|
|
|
|
#define MLM_SEARCH 0x01de
|
|
#define MLM_QUERYIMPORTEXPORT 0x01df
|
|
|
|
#define MLN_OVERFLOW 0x0001
|
|
#define MLN_PIXHORZOVERFLOW 0x0002
|
|
#define MLN_PIXVERTOVERFLOW 0x0003
|
|
#define MLN_TEXTOVERFLOW 0x0004
|
|
#define MLN_VSCROLL 0x0005
|
|
#define MLN_HSCROLL 0x0006
|
|
#define MLN_CHANGE 0x0007
|
|
#define MLN_SETFOCUS 0x0008
|
|
#define MLN_KILLFOCUS 0x0009
|
|
#define MLN_MARGIN 0x000a
|
|
#define MLN_SEARCHPAUSE 0x000b
|
|
#define MLN_MEMERROR 0x000c
|
|
#define MLN_UNDOOVERFLOW 0x000d
|
|
#define MLN_CLPBDFAIL 0x000f
|
|
|
|
|
|
typedef LONG IPT;
|
|
typedef IPT *PIPT;
|
|
typedef LONG PIX;
|
|
typedef ULONG LINE;
|
|
|
|
|
|
typedef struct _FORMATRECT /* Note 1 */
|
|
{
|
|
LONG cxFormat;
|
|
LONG cyFormat;
|
|
} MLEFORMATRECT;
|
|
typedef MLEFORMATRECT *PFORMATRECT;
|
|
|
|
typedef struct _MLECTLDATA
|
|
{
|
|
USHORT cbCtlData;
|
|
USHORT afIEFormat;
|
|
ULONG cchText;
|
|
IPT iptAnchor;
|
|
IPT iptCursor;
|
|
LONG cxFormat;
|
|
LONG cyFormat;
|
|
ULONG afFormatFlags;
|
|
PVOID pHWXCtlData;
|
|
} MLECTLDATA;
|
|
typedef MLECTLDATA *PMLECTLDATA;
|
|
|
|
typedef struct _MLEOVERFLOW
|
|
{
|
|
ULONG afErrInd;
|
|
LONG nBytesOver;
|
|
LONG pixHorzOver;
|
|
LONG pixVertOver;
|
|
} MLEOVERFLOW;
|
|
typedef MLEOVERFLOW *POVERFLOW;
|
|
|
|
typedef struct _MLEMARGSTRUCT
|
|
{
|
|
USHORT afMargins;
|
|
USHORT usMouMsg;
|
|
IPT iptNear;
|
|
} MLEMARGSTRUCT;
|
|
typedef MLEMARGSTRUCT *PMARGSTRUCT;
|
|
|
|
typedef struct _SEARCH /* Note 1 */
|
|
{
|
|
USHORT cb;
|
|
USHORT _pad;
|
|
PCHAR pchFind;
|
|
PCHAR pchReplace;
|
|
SHORT cchFind;
|
|
SHORT cchReplace;
|
|
IPT iptStart;
|
|
IPT iptStop;
|
|
USHORT cchFound;
|
|
} MLE_SEARCHDATA;
|
|
typedef MLE_SEARCHDATA *PMLE_SEARCHDATA;
|
|
|
|
#endif /* INCL_WINMLE */
|
|
|
|
/* --------------- GRAPHICS PROGRAMMING INTERFACE ------------------------- */
|
|
|
|
#define GPI_ERROR 0
|
|
#define GPI_OK 1
|
|
#define GPI_ALTERROR (-1)
|
|
|
|
#define HRGN_ERROR ((HRGN)(-1))
|
|
|
|
#define CLR_ERROR (-255)
|
|
#define CLR_NOINDEX (-254)
|
|
#define CLR_FALSE (-5)
|
|
#define CLR_TRUE (-4)
|
|
#define CLR_DEFAULT (-3)
|
|
#define CLR_WHITE (-2)
|
|
#define CLR_BLACK (-1)
|
|
#define CLR_BACKGROUND 0
|
|
#define CLR_BLUE 1
|
|
#define CLR_RED 2
|
|
#define CLR_PINK 3
|
|
#define CLR_GREEN 4
|
|
#define CLR_CYAN 5
|
|
#define CLR_YELLOW 6
|
|
#define CLR_NEUTRAL 7
|
|
#define CLR_DARKGRAY 8
|
|
#define CLR_DARKBLUE 9
|
|
#define CLR_DARKRED 10
|
|
#define CLR_DARKPINK 11
|
|
#define CLR_DARKGREEN 12
|
|
#define CLR_DARKCYAN 13
|
|
#define CLR_BROWN 14
|
|
#define CLR_PALEGRAY 15
|
|
|
|
#define RGB_ERROR (-255)
|
|
#define RGB_BLACK 0x00000000
|
|
#define RGB_BLUE 0x000000ff
|
|
#define RGB_GREEN 0x0000ff00
|
|
#define RGB_CYAN 0x0000ffff
|
|
#define RGB_RED 0x00ff0000
|
|
#define RGB_PINK 0x00ff00ff
|
|
#define RGB_YELLOW 0x00ffff00
|
|
#define RGB_WHITE 0x00ffffff
|
|
|
|
#define PRIM_LINE 1
|
|
#define PRIM_CHAR 2
|
|
#define PRIM_MARKER 3
|
|
#define PRIM_AREA 4
|
|
#define PRIM_IMAGE 5
|
|
|
|
#define AM_ERROR (-1)
|
|
#define AM_PRESERVE 0
|
|
#define AM_NOPRESERVE 1
|
|
|
|
#define FM_ERROR (-1)
|
|
#define FM_DEFAULT 0
|
|
#define FM_OR 1
|
|
#define FM_OVERPAINT 2
|
|
#define FM_LEAVEALONE 5
|
|
|
|
#define FM_XOR 4
|
|
#define FM_AND 6
|
|
#define FM_SUBTRACT 7
|
|
#define FM_MASKSRCNOT 8
|
|
#define FM_ZERO 9
|
|
#define FM_NOTMERGESRC 10
|
|
#define FM_NOTXORSRC 11
|
|
#define FM_INVERT 12
|
|
#define FM_MERGESRCNOT 13
|
|
#define FM_NOTCOPYSRC 14
|
|
#define FM_MERGENOTSRC 15
|
|
#define FM_NOTMASKSRC 16
|
|
#define FM_ONE 17
|
|
|
|
#define BM_ERROR (-1)
|
|
#define BM_DEFAULT 0
|
|
#define BM_OR 1
|
|
#define BM_OVERPAINT 2
|
|
#define BM_LEAVEALONE 5
|
|
|
|
#define BM_XOR 4
|
|
#define BM_AND 6
|
|
#define BM_SUBTRACT 7
|
|
#define BM_MASKSRCNOT 8
|
|
#define BM_ZERO 9
|
|
#define BM_NOTMERGESRC 10
|
|
#define BM_NOTXORSRC 11
|
|
#define BM_INVERT 12
|
|
#define BM_MERGESRCNOT 13
|
|
#define BM_NOTCOPYSRC 14
|
|
#define BM_MERGENOTSRC 15
|
|
#define BM_NOTMASKSRC 16
|
|
#define BM_ONE 17
|
|
#define BM_SRCTRANSPARENT 18
|
|
#define BM_DESTTRANSPARENT 19
|
|
|
|
#define LINETYPE_ERROR (-1)
|
|
#define LINETYPE_DEFAULT 0
|
|
#define LINETYPE_DOT 1
|
|
#define LINETYPE_SHORTDASH 2
|
|
#define LINETYPE_DASHDOT 3
|
|
#define LINETYPE_DOUBLEDOT 4
|
|
#define LINETYPE_LONGDASH 5
|
|
#define LINETYPE_DASHDOUBLEDOT 6
|
|
#define LINETYPE_SOLID 7
|
|
#define LINETYPE_INVISIBLE 8
|
|
#define LINETYPE_ALTERNATE 9
|
|
|
|
#define LINEWIDTH_ERROR (-1)
|
|
#define LINEWIDTH_DEFAULT 0L
|
|
#define LINEWIDTH_NORMAL 0x00010000
|
|
#define LINEWIDTH_THICK 0x00020000
|
|
|
|
#define LINEWIDTHGEOM_ERROR (-1)
|
|
|
|
#define LINEEND_ERROR (-1)
|
|
#define LINEEND_DEFAULT 0
|
|
#define LINEEND_FLAT 1
|
|
#define LINEEND_SQUARE 2
|
|
#define LINEEND_ROUND 3
|
|
|
|
#define LINEJOIN_ERROR (-1)
|
|
#define LINEJOIN_DEFAULT 0
|
|
#define LINEJOIN_BEVEL 1
|
|
#define LINEJOIN_ROUND 2
|
|
#define LINEJOIN_MITRE 3
|
|
|
|
#define CHDIRN_ERROR (-1)
|
|
#define CHDIRN_DEFAULT 0
|
|
#define CHDIRN_LEFTRIGHT 1
|
|
#define CHDIRN_TOPBOTTOM 2
|
|
#define CHDIRN_RIGHTLEFT 3
|
|
#define CHDIRN_BOTTOMTOP 4
|
|
|
|
#define TA_NORMAL_HORIZ 0x0001
|
|
#define TA_LEFT 0x0002
|
|
#define TA_CENTER 0x0003
|
|
#define TA_RIGHT 0x0004
|
|
#define TA_STANDARD_HORIZ 0x0005
|
|
#define TA_NORMAL_VERT 0x0100
|
|
#define TA_TOP 0x0200
|
|
#define TA_HALF 0x0300
|
|
#define TA_BASE 0x0400
|
|
#define TA_BOTTOM 0x0500
|
|
#define TA_STANDARD_VERT 0x0600
|
|
|
|
#define CM_ERROR (-1)
|
|
#define CM_DEFAULT 0
|
|
#define CM_MODE1 1
|
|
#define CM_MODE2 2
|
|
#define CM_MODE3 3
|
|
|
|
#define MARKSYM_ERROR (-1)
|
|
#define MARKSYM_DEFAULT 0
|
|
#define MARKSYM_CROSS 1
|
|
#define MARKSYM_PLUS 2
|
|
#define MARKSYM_DIAMOND 3
|
|
#define MARKSYM_SQUARE 4
|
|
#define MARKSYM_SIXPOINTSTAR 5
|
|
#define MARKSYM_EIGHTPOINTSTAR 6
|
|
#define MARKSYM_SOLIDDIAMOND 7
|
|
#define MARKSYM_SOLIDSQUARE 8
|
|
#define MARKSYM_DOT 9
|
|
#define MARKSYM_SMALLCIRCLE 10
|
|
#define MARKSYM_BLANK 64
|
|
|
|
#define TXTBOX_TOPLEFT 0
|
|
#define TXTBOX_BOTTOMLEFT 1
|
|
#define TXTBOX_TOPRIGHT 2
|
|
#define TXTBOX_BOTTOMRIGHT 3
|
|
#define TXTBOX_CONCAT 4
|
|
#define TXTBOX_COUNT 5
|
|
|
|
#define PVIS_ERROR 0
|
|
#define PVIS_INVISIBLE 1
|
|
#define PVIS_VISIBLE 2
|
|
|
|
#define RVIS_ERROR 0
|
|
#define RVIS_INVISIBLE 1
|
|
#define RVIS_PARTIAL 2
|
|
#define RVIS_VISIBLE 3
|
|
|
|
#define FONT_DEFAULT 1
|
|
#define FONT_MATCH 2
|
|
|
|
#define LCIDT_FONT 6
|
|
#define LCIDT_BITMAP 7
|
|
|
|
#define LCID_ALL (-1)
|
|
|
|
#define CHS_OPAQUE 0x0001
|
|
#define CHS_VECTOR 0x0002
|
|
#define CHS_LEAVEPOS 0x0008
|
|
#define CHS_CLIP 0x0010
|
|
#define CHS_UNDERSCORE 0x0200
|
|
#define CHS_STRIKEOUT 0x0400
|
|
|
|
#define FWEIGHT_DONT_CARE 0
|
|
#define FWEIGHT_ULTRA_LIGHT 1
|
|
#define FWEIGHT_EXTRA_LIGHT 2
|
|
#define FWEIGHT_LIGHT 3
|
|
#define FWEIGHT_SEMI_LIGHT 4
|
|
#define FWEIGHT_NORMAL 5
|
|
#define FWEIGHT_SEMI_BOLD 6
|
|
#define FWEIGHT_BOLD 7
|
|
#define FWEIGHT_EXTRA_BOLD 8
|
|
#define FWEIGHT_ULTRA_BOLD 9
|
|
|
|
#define FWIDTH_DONT_CARE 0
|
|
#define FWIDTH_ULTRA_CONDENSED 1
|
|
#define FWIDTH_EXTRA_CONDENSED 2
|
|
#define FWIDTH_CONDENSED 3
|
|
#define FWIDTH_SEMI_CONDENSED 4
|
|
#define FWIDTH_NORMAL 5
|
|
#define FWIDTH_SEMI_EXPANDED 6
|
|
#define FWIDTH_EXPANDED 7
|
|
#define FWIDTH_EXTRA_EXPANDED 8
|
|
#define FWIDTH_ULTRA_EXPANDED 9
|
|
|
|
#define FTYPE_ITALIC 0x0001
|
|
#define FTYPE_ITALIC_DONT_CARE 0x0002
|
|
#define FTYPE_OBLIQUE 0x0004
|
|
#define FTYPE_OBLIQUE_DONT_CARE 0x0008
|
|
#define FTYPE_ROUNDED 0x0010
|
|
#define FTYPE_ROUNDED_DONT_CARE 0x0020
|
|
|
|
#define QFA_PUBLIC 1
|
|
#define QFA_PRIVATE 2
|
|
#define QFA_ERROR GPI_ALTERROR
|
|
|
|
#define QF_PUBLIC 0x0001
|
|
#define QF_PRIVATE 0x0002
|
|
#define QF_NO_GENERIC 0x0004
|
|
#define QF_NO_DEVICE 0x0008
|
|
|
|
#define QCD_LCT_FORMAT 0
|
|
#define QCD_LCT_LOINDEX 1
|
|
#define QCD_LCT_HIINDEX 2
|
|
#define QCD_LCT_OPTIONS 3
|
|
|
|
#define QLCT_ERROR (-1)
|
|
#define QLCT_RGB (-2)
|
|
|
|
#define QLCT_NOTLOADED (-1)
|
|
|
|
#define PAL_ERROR (-1)
|
|
|
|
#define PC_RESERVED 0x01
|
|
#define PC_EXPLICIT 0x02
|
|
#define PC_NOCOLLAPSE 0x04
|
|
|
|
#define SCP_ALTERNATE 0
|
|
#define SCP_WINDING 2
|
|
#define SCP_AND 4
|
|
#define SCP_RESET 0
|
|
#define SCP_INCL 0
|
|
#define SCP_EXCL 8
|
|
|
|
#define MPATH_STROKE 6
|
|
|
|
#define FPATH_ALTERNATE 0
|
|
#define FPATH_WINDING 2
|
|
#define FPATH_INCL 0
|
|
#define FPATH_EXCL 8
|
|
|
|
#define CVTC_WORLD 1
|
|
#define CVTC_MODEL 2
|
|
#define CVTC_DEFAULTPAGE 3
|
|
#define CVTC_PAGE 4
|
|
#define CVTC_DEVICE 5
|
|
|
|
#define TRANSFORM_REPLACE 0
|
|
#define TRANSFORM_ADD 1
|
|
#define TRANSFORM_PREEMPT 2
|
|
|
|
#define SEGEM_ERROR 0
|
|
#define SEGEM_INSERT 1
|
|
#define SEGEM_REPLACE 2
|
|
|
|
#define POLYGON_NOBOUNDARY 0x0000
|
|
#define POLYGON_BOUNDARY 0x0001
|
|
|
|
#define POLYGON_ALTERNATE 0x0000
|
|
#define POLYGON_WINDING 0x0002
|
|
|
|
#define POLYGON_INCL 0x0000
|
|
#define POLYGON_EXCL 0x0008
|
|
|
|
#define POLYGON_FILL 0x0000
|
|
#define POLYGON_NOFILL 0x0010
|
|
|
|
#define LCOL_RESET 0x0001
|
|
#define LCOL_REALIZABLE 0x0002
|
|
#define LCOL_PURECOLOR 0x0004
|
|
#define LCOL_OVERRIDE_DEFAULT_COLORS 0x0008
|
|
#define LCOL_REALIZED 0x0010
|
|
|
|
#define LCOLF_DEFAULT 0
|
|
#define LCOLF_INDRGB 1
|
|
#define LCOLF_CONSECRGB 2
|
|
#define LCOLF_RGB 3
|
|
#define LCOLF_PALETTE 4
|
|
|
|
#define LCOLOPT_REALIZED 0x0001
|
|
#define LCOLOPT_INDEX 0x0002
|
|
|
|
#define BA_NOBOUNDARY 0
|
|
#define BA_BOUNDARY 0x0001
|
|
|
|
#define BA_ALTERNATE 0
|
|
#define BA_WINDING 0x0002
|
|
|
|
#define BA_INCL 0
|
|
#define BA_EXCL 8
|
|
|
|
#define DRO_FILL 1
|
|
#define DRO_OUTLINE 2
|
|
#define DRO_OUTLINEFILL 3
|
|
|
|
#define PATSYM_ERROR (-1)
|
|
#define PATSYM_DEFAULT 0
|
|
#define PATSYM_DENSE1 1
|
|
#define PATSYM_DENSE2 2
|
|
#define PATSYM_DENSE3 3
|
|
#define PATSYM_DENSE4 4
|
|
#define PATSYM_DENSE5 5
|
|
#define PATSYM_DENSE6 6
|
|
#define PATSYM_DENSE7 7
|
|
#define PATSYM_DENSE8 8
|
|
#define PATSYM_VERT 9
|
|
#define PATSYM_HORIZ 10
|
|
#define PATSYM_DIAG1 11
|
|
#define PATSYM_DIAG2 12
|
|
#define PATSYM_DIAG3 13
|
|
#define PATSYM_DIAG4 14
|
|
#define PATSYM_NOSHADE 15
|
|
#define PATSYM_SOLID 16
|
|
#define PATSYM_HALFTONE 17
|
|
#define PATSYM_HATCH 18
|
|
#define PATSYM_DIAGHATCH 19
|
|
#define PATSYM_BLANK 64
|
|
|
|
#define LCID_ERROR (-1)
|
|
#define LCID_DEFAULT 0
|
|
|
|
#define CRGN_OR 1
|
|
#define CRGN_COPY 2
|
|
#define CRGN_XOR 4
|
|
#define CRGN_AND 6
|
|
#define CRGN_DIFF 7
|
|
|
|
#define RGN_ERROR 0
|
|
#define RGN_NULL 1
|
|
#define RGN_RECT 2
|
|
#define RGN_COMPLEX 3
|
|
|
|
#define PRGN_ERROR 0
|
|
#define PRGN_OUTSIDE 1
|
|
#define PRGN_INSIDE 2
|
|
|
|
#define RRGN_ERROR 0
|
|
#define RRGN_OUTSIDE 1
|
|
#define RRGN_PARTIAL 2
|
|
#define RRGN_INSIDE 3
|
|
|
|
#define EQRGN_ERROR 0
|
|
#define EQRGN_NOTEQUAL 1
|
|
#define EQRGN_EQUAL 2
|
|
|
|
#define RECTDIR_LFRT_TOPBOT 1
|
|
#define RECTDIR_RTLF_TOPBOT 2
|
|
#define RECTDIR_LFRT_BOTTOP 3
|
|
#define RECTDIR_RTLF_BOTTOP 4
|
|
|
|
#define PMF_SEGBASE 0
|
|
#define PMF_LOADTYPE 1
|
|
#define PMF_RESOLVE 2
|
|
#define PMF_LCIDS 3
|
|
#define PMF_RESET 4
|
|
#define PMF_SUPPRESS 5
|
|
#define PMF_COLORTABLES 6
|
|
#define PMF_COLORREALIZABLE 7
|
|
#define PMF_DEFAULTS 8
|
|
#define PMF_DELETEOBJECTS 9
|
|
|
|
#define RS_DEFAULT 0
|
|
#define RS_NODISCARD 1
|
|
#define LC_DEFAULT 0
|
|
#define LC_NOLOAD 1
|
|
#define LC_LOADDISC 3
|
|
#define LT_DEFAULT 0
|
|
#define LT_NOMODIFY 1
|
|
#define LT_ORIGINALVIEW 4
|
|
#define RES_DEFAULT 0
|
|
#define RES_NORESET 1
|
|
#define RES_RESET 2
|
|
#define SUP_DEFAULT 0
|
|
#define SUP_NOSUPPRESS 1
|
|
#define SUP_SUPPRESS 2
|
|
#define CTAB_DEFAULT 0
|
|
#define CTAB_NOMODIFY 1
|
|
#define CTAB_REPLACE 3
|
|
#define CTAB_REPLACEPALETTE 4
|
|
#define CREA_DEFAULT 0
|
|
#define CREA_REALIZE 1
|
|
#define CREA_NOREALIZE 2
|
|
#define CREA_DOREALIZE 3
|
|
|
|
#define DDEF_DEFAULT 0
|
|
#define DDEF_IGNORE 1
|
|
#define DDEF_LOADDISC 3
|
|
#define DOBJ_DEFAULT 0
|
|
#define DOBJ_NODELETE 1
|
|
#define DOBJ_DELETE 2
|
|
#define RSP_DEFAULT 0
|
|
#define RSP_NODISCARD 1
|
|
|
|
#define LBB_COLOR 0x0001
|
|
#define LBB_BACK_COLOR 0x0002
|
|
#define LBB_MIX_MODE 0x0004
|
|
#define LBB_BACK_MIX_MODE 0x0008
|
|
#define LBB_WIDTH 0x0010
|
|
#define LBB_GEOM_WIDTH 0x0020
|
|
#define LBB_TYPE 0x0040
|
|
#define LBB_END 0x0080
|
|
#define LBB_JOIN 0x0100
|
|
|
|
#define CBB_COLOR 0x0001
|
|
#define CBB_BACK_COLOR 0x0002
|
|
#define CBB_MIX_MODE 0x0004
|
|
#define CBB_BACK_MIX_MODE 0x0008
|
|
#define CBB_SET 0x0010
|
|
#define CBB_MODE 0x0020
|
|
#define CBB_BOX 0x0040
|
|
#define CBB_ANGLE 0x0080
|
|
#define CBB_SHEAR 0x0100
|
|
#define CBB_DIRECTION 0x0200
|
|
#define CBB_TEXT_ALIGN 0x0400
|
|
#define CBB_EXTRA 0x0800
|
|
#define CBB_BREAK_EXTRA 0x1000
|
|
|
|
#define MBB_COLOR 0x0001
|
|
#define MBB_BACK_COLOR 0x0002
|
|
#define MBB_MIX_MODE 0x0004
|
|
#define MBB_BACK_MIX_MODE 0x0008
|
|
#define MBB_SET 0x0010
|
|
#define MBB_SYMBOL 0x0020
|
|
#define MBB_BOX 0x0040
|
|
|
|
#define ABB_COLOR 0x0001
|
|
#define ABB_BACK_COLOR 0x0002
|
|
#define ABB_MIX_MODE 0x0004
|
|
#define ABB_BACK_MIX_MODE 0x0008
|
|
#define ABB_SET 0x0010
|
|
#define ABB_SYMBOL 0x0020
|
|
#define ABB_REF_POINT 0x0040
|
|
|
|
#define IBB_COLOR 0x0001
|
|
#define IBB_BACK_COLOR 0x0002
|
|
#define IBB_MIX_MODE 0x0004
|
|
#define IBB_BACK_MIX_MODE 0x0008
|
|
|
|
|
|
typedef PVOID PBUNDLE;
|
|
|
|
typedef LONG FIXED;
|
|
typedef FIXED *PFIXED;
|
|
|
|
typedef LHANDLE HMF;
|
|
typedef HMF *PHMF;
|
|
|
|
|
|
typedef struct _SIZEL
|
|
{
|
|
LONG cx;
|
|
LONG cy;
|
|
} SIZEL;
|
|
typedef SIZEL *PSIZEL;
|
|
|
|
typedef struct _RGNRECT
|
|
{
|
|
ULONG ircStart;
|
|
ULONG crc;
|
|
ULONG crcReturned;
|
|
ULONG ulDirection;
|
|
} RGNRECT;
|
|
typedef RGNRECT *PRGNRECT;
|
|
|
|
typedef struct _MATRIXLF
|
|
{
|
|
FIXED fxM11;
|
|
FIXED fxM12;
|
|
LONG lM13;
|
|
FIXED fxM21;
|
|
FIXED fxM22;
|
|
LONG lM23;
|
|
LONG lM31;
|
|
LONG lM32;
|
|
LONG lM33;
|
|
} MATRIXLF;
|
|
typedef MATRIXLF *PMATRIXLF;
|
|
|
|
typedef struct _ARCPARAMS
|
|
{
|
|
LONG lP;
|
|
LONG lQ;
|
|
LONG lR;
|
|
LONG lS;
|
|
} ARCPARAMS;
|
|
typedef ARCPARAMS *PARCPARAMS;
|
|
|
|
typedef struct _SIZEF
|
|
{
|
|
FIXED cx;
|
|
FIXED cy;
|
|
} SIZEF;
|
|
typedef SIZEF *PSIZEF;
|
|
|
|
typedef struct _POLYGON
|
|
{
|
|
ULONG ulPoints;
|
|
PPOINTL aPointl;
|
|
} POLYGON;
|
|
typedef POLYGON *PPOLYGON;
|
|
|
|
typedef struct _POLYSET
|
|
{
|
|
ULONG ulPolys;
|
|
POLYGON aPolygon[1];
|
|
} POLYSET;
|
|
typedef POLYSET *PPOLYSET;
|
|
|
|
typedef struct _GRADIENTL
|
|
{
|
|
LONG x;
|
|
LONG y;
|
|
} GRADIENTL;
|
|
typedef GRADIENTL *PGRADIENTL;
|
|
|
|
typedef struct _KERNINGPAIRS
|
|
{
|
|
SHORT sFirstChar;
|
|
SHORT sSecondChar;
|
|
LONG lKerningAmount;
|
|
} KERNINGPAIRS;
|
|
typedef KERNINGPAIRS *PKERNINGPAIRS;
|
|
|
|
typedef struct _FACENAMEDESC
|
|
{
|
|
USHORT usSize;
|
|
USHORT usWeightClass;
|
|
USHORT usWidthClass;
|
|
USHORT usReserved;
|
|
ULONG flOptions;
|
|
} FACENAMEDESC;
|
|
typedef FACENAMEDESC *PFACENAMEDESC;
|
|
|
|
typedef CHAR FFDESCS[2][FACESIZE];
|
|
typedef FFDESCS *PFFDESCS;
|
|
|
|
typedef struct _FFDESCS2
|
|
{
|
|
ULONG cbLength;
|
|
ULONG cbFacenameOffset;
|
|
BYTE abFamilyName[1];
|
|
} FFDESCS2;
|
|
typedef FFDESCS2 *PFFDESCS2;
|
|
|
|
|
|
typedef struct _LINEBUNDLE
|
|
{
|
|
LONG lColor;
|
|
LONG lBackColor;
|
|
USHORT usMixMode;
|
|
USHORT usBackMixMode;
|
|
FIXED fxWidth;
|
|
LONG lGeomWidth;
|
|
USHORT usType;
|
|
USHORT usEnd;
|
|
USHORT usJoin;
|
|
USHORT usReserved;
|
|
} LINEBUNDLE;
|
|
typedef LINEBUNDLE *PLINEBUNDLE;
|
|
|
|
typedef struct _CHARBUNDLE
|
|
{
|
|
LONG lColor;
|
|
LONG lBackColor;
|
|
USHORT usMixMode;
|
|
USHORT usBackMixMode;
|
|
USHORT usSet;
|
|
USHORT usPrecision;
|
|
SIZEF sizfxCell;
|
|
POINTL ptlAngle;
|
|
POINTL ptlShear;
|
|
USHORT usDirection;
|
|
USHORT usTextAlign;
|
|
FIXED fxExtra;
|
|
FIXED fxBreakExtra;
|
|
} CHARBUNDLE;
|
|
typedef CHARBUNDLE *PCHARBUNDLE;
|
|
|
|
typedef struct _MARKERBUNDLE
|
|
{
|
|
LONG lColor;
|
|
LONG lBackColor;
|
|
USHORT usMixMode;
|
|
USHORT usBackMixMode;
|
|
USHORT usSet;
|
|
USHORT usSymbol;
|
|
SIZEF sizfxCell;
|
|
} MARKERBUNDLE;
|
|
typedef MARKERBUNDLE *PMARKERBUNDLE;
|
|
|
|
typedef struct _AREABUNDLE
|
|
{
|
|
LONG lColor;
|
|
LONG lBackColor;
|
|
USHORT usMixMode;
|
|
USHORT usBackMixMode;
|
|
USHORT usSet;
|
|
USHORT usSymbol;
|
|
POINTL ptlRefPoint;
|
|
} AREABUNDLE;
|
|
typedef AREABUNDLE *PAREABUNDLE;
|
|
|
|
typedef struct _IMAGEBUNDLE
|
|
{
|
|
LONG lColor;
|
|
LONG lBackColor;
|
|
USHORT usMixMode;
|
|
USHORT usBackMixMode;
|
|
} IMAGEBUNDLE;
|
|
typedef IMAGEBUNDLE *PIMAGEBUNDLE;
|
|
|
|
|
|
#define MAKEFIXED(i,f) MAKELONG(f,i)
|
|
#define FIXEDFRAC(fx) (LOUSHORT(fx))
|
|
#define FIXEDINT(fx) ((SHORT)HIUSHORT(fx))
|
|
|
|
|
|
LONG GpiAnimatePalette (HPAL hpal, ULONG ulFormat, ULONG ulStart,
|
|
ULONG ulCount, __const__ ULONG *aulTable);
|
|
BOOL GpiBeginArea (HPS hps, ULONG flOptions);
|
|
BOOL GpiBeginElement (HPS hps, LONG lType, PCSZ pszDesc);
|
|
BOOL GpiBeginPath (HPS hps, LONG lPath);
|
|
LONG GpiBox (HPS hps, LONG lControl, __const__ POINTL *pptlPoint, LONG lHRound,
|
|
LONG lVRound);
|
|
LONG GpiCallSegmentMatrix (HPS hps, LONG lSegment, LONG lCount,
|
|
__const__ MATRIXLF *pmatlfArray, LONG lOptions);
|
|
LONG GpiCharString (HPS hps, LONG lCount, PCCH pchString);
|
|
LONG GpiCharStringAt (HPS hps, __const__ POINTL *pptlPoint, LONG lCount,
|
|
PCCH pchString);
|
|
LONG GpiCharStringPos (HPS hps, __const__ RECTL *prclRect, ULONG flOptions,
|
|
LONG lCount, PCCH pchString, __const__ LONG *alAdx);
|
|
LONG GpiCharStringPosAt (HPS hps, __const__ POINTL *pptlStart,
|
|
__const__ RECTL *prclRect, ULONG flOptions, LONG lCount, PCCH pchString,
|
|
__const__ LONG *alAdx);
|
|
BOOL GpiCloseFigure (HPS hps);
|
|
LONG GpiCombineRegion (HPS hps, HRGN hrgnDest, HRGN hrgnSrc1, HRGN hrgnSrc2,
|
|
LONG lMode);
|
|
BOOL GpiComment (HPS hps, LONG lLength, __const__ BYTE *pbData);
|
|
BOOL GpiConvert (HPS hps, LONG lSrc, LONG lTarg, LONG lCount,
|
|
PPOINTL aptlPoints);
|
|
BOOL GpiConvertWithMatrix (HPS hps, LONG lCountp, PPOINTL aptlPoints,
|
|
LONG lCount, __const__ MATRIXLF *pmatlfArray);
|
|
HMF GpiCopyMetaFile (HMF hmf);
|
|
BOOL GpiCreateLogColorTable (HPS hps, ULONG flOptions, LONG lFormat,
|
|
LONG lStart, LONG lCount, __const__ LONG *alTable);
|
|
LONG GpiCreateLogFont (HPS hps, __const__ STR8 *pName, LONG lLcid,
|
|
__const__ FATTRS *pfatAttrs);
|
|
HPAL GpiCreatePalette (HAB hab, ULONG flOptions, ULONG ulFormat,
|
|
ULONG ulCount, __const__ ULONG *aulTable);
|
|
HRGN GpiCreateRegion (HPS hps, LONG lCount, __const__ RECTL *arclRectangles);
|
|
BOOL GpiDeleteElement (HPS hps);
|
|
BOOL GpiDeleteElementRange (HPS hps, LONG lFirstElement, LONG lLastElement);
|
|
BOOL GpiDeleteElementsBetweenLabels (HPS hps, LONG lFirstLabel,
|
|
LONG lLastLabel);
|
|
BOOL GpiDeleteMetaFile (HMF hmf);
|
|
BOOL GpiDeletePalette (HPAL hpal);
|
|
BOOL GpiDeleteSetId (HPS hps, LONG lLcid);
|
|
BOOL GpiDestroyRegion (HPS hps, HRGN hrgn);
|
|
LONG GpiElement (HPS hps, LONG lType, PCSZ pszDesc, LONG lLength,
|
|
__const__ BYTE *pbData);
|
|
LONG GpiEndArea (HPS hps);
|
|
BOOL GpiEndElement (HPS hps);
|
|
BOOL GpiEndPath (HPS hps);
|
|
LONG GpiEqualRegion (HPS hps, HRGN hrgnSrc1, HRGN hrgnSrc2);
|
|
LONG GpiExcludeClipRectangle (HPS hps, __const__ RECTL *prclRectangle);
|
|
LONG GpiFillPath (HPS hps, LONG lPath, LONG lOptions);
|
|
LONG GpiFrameRegion (HPS hps, HRGN hrgn, __const__ SIZEL *thickness);
|
|
LONG GpiFullArc (HPS hps, LONG lControl, FIXED fxMultiplier);
|
|
LONG GpiImage (HPS hps, LONG lFormat, __const__ SIZEL *psizlImageSize,
|
|
LONG lLength, __const__ BYTE *pbData);
|
|
LONG GpiIntersectClipRectangle (HPS hps, __const__ RECTL *prclRectangle);
|
|
BOOL GpiLabel (HPS hps, LONG lLabel);
|
|
LONG GpiLine (HPS hps, __const__ POINTL *pptlEndPoint);
|
|
BOOL GpiLoadFonts (HAB hab, PCSZ pszFilename);
|
|
HMF GpiLoadMetaFile (HAB hab, PCSZ pszFilename);
|
|
BOOL GpiLoadPublicFonts (HAB hab, PCSZ pszFileName);
|
|
LONG GpiMarker (HPS hps, __const__ POINTL *pptlPoint);
|
|
BOOL GpiModifyPath (HPS hps, LONG lPath, LONG lMode);
|
|
BOOL GpiMove (HPS hps, __const__ POINTL *pptlPoint);
|
|
LONG GpiOffsetClipRegion (HPS hps, __const__ POINTL *pptlPoint);
|
|
BOOL GpiOffsetElementPointer (HPS hps, LONG loffset);
|
|
BOOL GpiOffsetRegion (HPS hps, HRGN Hrgn, __const__ POINTL *pptlOffset);
|
|
LONG GpiOutlinePath (HPS hps, LONG lPath, LONG lOptions);
|
|
LONG GpiPaintRegion (HPS hps, HRGN hrgn);
|
|
LONG GpiPartialArc (HPS hps, __const__ POINTL *pptlCenter, FIXED fxMultiplier,
|
|
FIXED fxStartAngle, FIXED fxSweepAngle);
|
|
HRGN GpiPathToRegion (HPS GpiH, LONG lPath, LONG lOptions);
|
|
LONG GpiPlayMetaFile (HPS hps, HMF hmf, LONG lCount1,
|
|
__const__ LONG *alOptarray, PLONG plSegCount, LONG lCount2, PSZ pszDesc);
|
|
LONG GpiPointArc (HPS hps, __const__ POINTL *pptl2);
|
|
LONG GpiPolyFillet (HPS hps, LONG lCount, __const__ POINTL *aptlPoints);
|
|
LONG GpiPolyFilletSharp (HPS hps, LONG lCount, __const__ POINTL *aptlPoints,
|
|
__const__ FIXED *afxPoints);
|
|
LONG GpiPolygons (HPS hps, ULONG ulCount, __const__ POLYGON *paplgn,
|
|
ULONG flOptions, ULONG flModel);
|
|
LONG GpiPolyLine (HPS hps, LONG lCount, __const__ POINTL *aptlPoints);
|
|
LONG GpiPolyLineDisjoint (HPS hps, LONG lCount, __const__ POINTL *aptlPoints);
|
|
LONG GpiPolyMarker (HPS hps, LONG lCount, __const__ POINTL *aptlPoints);
|
|
LONG GpiPolySpline (HPS hps, LONG lCount, __const__ POINTL *aptlPoints);
|
|
BOOL GpiPop (HPS hps, LONG lCount);
|
|
LONG GpiPtInRegion (HPS hps, HRGN hrgn, __const__ POINTL *pptlPoint);
|
|
LONG GpiPtVisible (HPS hps, __const__ POINTL *pptlPoint);
|
|
BOOL GpiQueryArcParams (HPS hps, PARCPARAMS parcpArcParams);
|
|
LONG GpiQueryAttrMode (HPS hps);
|
|
LONG GpiQueryAttrs (HPS hps, LONG lPrimType, ULONG flAttrMask,
|
|
PBUNDLE ppbunAttrs);
|
|
LONG GpiQueryBackColor (HPS hps);
|
|
LONG GpiQueryBackMix (HPS hps);
|
|
BOOL GpiQueryCharAngle (HPS hps, PGRADIENTL pgradlAngle);
|
|
BOOL GpiQueryCharBox (HPS hps, PSIZEF psizfxSize);
|
|
BOOL GpiQueryCharBreakExtra (HPS hps, PFIXED BreakExtra);
|
|
LONG GpiQueryCharDirection (HPS hps);
|
|
BOOL GpiQueryCharExtra (HPS hps, PFIXED Extra);
|
|
LONG GpiQueryCharMode (HPS hps);
|
|
LONG GpiQueryCharSet (HPS hps);
|
|
BOOL GpiQueryCharShear (HPS hps, PPOINTL pptlShear);
|
|
BOOL GpiQueryCharStringPos (HPS hps, ULONG flOptions, LONG lCount,
|
|
PCCH pchString, PLONG alXincrements, PPOINTL aptlPositions);
|
|
BOOL GpiQueryCharStringPosAt (HPS hps, PPOINTL pptlStart, ULONG flOptions,
|
|
LONG lCount, PCCH pchString, PLONG alXincrements, PPOINTL aptlPositions);
|
|
LONG GpiQueryClipBox (HPS hps, PRECTL prclBound);
|
|
HRGN GpiQueryClipRegion (HPS hps);
|
|
LONG GpiQueryColor (HPS hps);
|
|
BOOL GpiQueryColorData (HPS hps, LONG lCount, PLONG alArray);
|
|
LONG GpiQueryColorIndex (HPS hps, ULONG flOptions, LONG lRgbColor);
|
|
ULONG GpiQueryCp (HPS hps);
|
|
BOOL GpiQueryCurrentPosition (HPS hps, PPOINTL pptlPoint);
|
|
BOOL GpiQueryDefArcParams (HPS hps, PARCPARAMS parcpArcParams);
|
|
BOOL GpiQueryDefAttrs (HPS hps, LONG lPrimType, ULONG flAttrMask,
|
|
PBUNDLE ppbunAttrs);
|
|
BOOL GpiQueryDefCharBox (HPS hps, PSIZEL psizlSize);
|
|
BOOL GpiQueryDefTag (HPS hps, PLONG plTag);
|
|
BOOL GpiQueryDefViewingLimits (HPS hps, PRECTL prclLimits);
|
|
BOOL GpiQueryDefaultViewMatrix (HPS hps, LONG lCount, PMATRIXLF pmatlfArray);
|
|
LONG GpiQueryEditMode (HPS hps);
|
|
LONG GpiQueryElement (HPS hps, LONG lOff, LONG lMaxLength, PBYTE pbData);
|
|
LONG GpiQueryElementPointer (HPS hps);
|
|
LONG GpiQueryElementType (HPS hps, PLONG plType, LONG lLength, PSZ pszData);
|
|
ULONG GpiQueryFaceString (HPS PS, PCSZ FamilyName, PFACENAMEDESC attrs,
|
|
LONG length, PSZ CompoundFaceName);
|
|
ULONG GpiQueryFontAction (HAB anchor, ULONG options);
|
|
LONG GpiQueryFontFileDescriptions (HAB hab, PCSZ pszFilename, PLONG plCount,
|
|
PFFDESCS affdescsNames);
|
|
BOOL GpiQueryFontMetrics (HPS hps, LONG lMetricsLength,
|
|
PFONTMETRICS pfmMetrics);
|
|
LONG GpiQueryFonts (HPS hps, ULONG flOptions, PCSZ pszFacename,
|
|
PLONG plReqFonts, LONG lMetricsLength, PFONTMETRICS afmMetrics);
|
|
LONG GpiQueryFullFontFileDescs (HAB hab, PCSZ pszFilename, PLONG plCount,
|
|
PVOID pNames, PLONG plNamesBuffLength);
|
|
BOOL GpiQueryGraphicsField (HPS hps, PRECTL prclField);
|
|
LONG GpiQueryKerningPairs (HPS hps, LONG lCount, PKERNINGPAIRS akrnprData);
|
|
LONG GpiQueryLineEnd (HPS hps);
|
|
LONG GpiQueryLineJoin (HPS hps);
|
|
LONG GpiQueryLineType (HPS hps);
|
|
FIXED GpiQueryLineWidth (HPS hps);
|
|
LONG GpiQueryLineWidthGeom (HPS hps);
|
|
LONG GpiQueryLogColorTable (HPS hps, ULONG flOptions, LONG lStart, LONG lCount,
|
|
PLONG alArray);
|
|
BOOL GpiQueryLogicalFont (HPS PS, LONG lcid, PSTR8 name, PFATTRS attrs,
|
|
LONG length);
|
|
LONG GpiQueryMarker (HPS hps);
|
|
BOOL GpiQueryMarkerBox (HPS hps, PSIZEF psizfxSize);
|
|
LONG GpiQueryMarkerSet (HPS hps);
|
|
BOOL GpiQueryMetaFileBits (HMF hmf, LONG lOffset, LONG lLength, PBYTE pbData);
|
|
LONG GpiQueryMetaFileLength (HMF hmf);
|
|
LONG GpiQueryMix (HPS hps);
|
|
BOOL GpiQueryModelTransformMatrix (HPS hps, LONG lCount,
|
|
PMATRIXLF pmatlfArray);
|
|
LONG GpiQueryNearestColor (HPS hps, ULONG flOptions, LONG lRgbIn);
|
|
LONG GpiQueryNumberSetIds (HPS hps);
|
|
BOOL GpiQueryPageViewport (HPS hps, PRECTL prclViewport);
|
|
HPAL GpiQueryPalette (HPS hps);
|
|
LONG GpiQueryPaletteInfo (HPAL hpal, HPS hps, ULONG flOptions,
|
|
ULONG ulStart, ULONG ulCount, PULONG aulArray);
|
|
LONG GpiQueryPattern (HPS hps);
|
|
BOOL GpiQueryPatternRefPoint (HPS hps, PPOINTL pptlRefPoint);
|
|
LONG GpiQueryPatternSet (HPS hps);
|
|
LONG GpiQueryRealColors (HPS hps, ULONG flOptions, LONG lStart, LONG lCount,
|
|
PLONG alColors);
|
|
LONG GpiQueryRegionBox (HPS hps, HRGN hrgn, PRECTL prclBound);
|
|
BOOL GpiQueryRegionRects (HPS hps, HRGN hrgn, PRECTL prclBound,
|
|
PRGNRECT prgnrcControl, PRECTL prclRect);
|
|
LONG GpiQueryRGBColor (HPS hps, ULONG flOptions, LONG lColorIndex);
|
|
BOOL GpiQuerySegmentTransformMatrix (HPS hps, LONG lSegid, LONG lCount,
|
|
PMATRIXLF pmatlfArray);
|
|
BOOL GpiQuerySetIds (HPS hps, LONG lCount, PLONG alTypes, PSTR8 aNames,
|
|
PLONG allcids);
|
|
BOOL GpiQueryTextAlignment (HPS hps, PLONG plHoriz, PLONG plVert);
|
|
BOOL GpiQueryTextBox (HPS hps, LONG lCount1, PCH pchString, LONG lCount2,
|
|
PPOINTL aptlPoints);
|
|
BOOL GpiQueryViewingLimits (HPS hps, PRECTL prclLimits);
|
|
BOOL GpiQueryViewingTransformMatrix (HPS hps, LONG lCount,
|
|
PMATRIXLF pmatlfArray);
|
|
BOOL GpiQueryWidthTable (HPS hps, LONG lFirstChar, LONG lCount, PLONG alData);
|
|
LONG GpiRectInRegion (HPS hps, HRGN hrgn, __const__ RECTL *prclRect);
|
|
LONG GpiRectVisible (HPS hps, __const__ RECTL *prclRectangle);
|
|
BOOL GpiRotate (HPS hps, PMATRIXLF pmatlfArray, LONG lOptions, FIXED fxAngle,
|
|
__const__ POINTL *pptlCenter);
|
|
BOOL GpiSaveMetaFile (HMF hmf, PCSZ pszFilename);
|
|
BOOL GpiScale (HPS hps, PMATRIXLF pmfatlfArray, LONG lOptions,
|
|
__const__ FIXED *afxScale, __const__ POINTL *pptlCenter);
|
|
HPAL GpiSelectPalette (HPS hps, HPAL hpal);
|
|
BOOL GpiSetArcParams (HPS hps, __const__ ARCPARAMS *parcpArcParams);
|
|
BOOL GpiSetAttrMode (HPS hps, LONG lMode);
|
|
BOOL GpiSetAttrs (HPS hps, LONG lPrimType, ULONG flAttrMask, ULONG flDefMask,
|
|
__const__ VOID *ppbunAttrs);
|
|
BOOL GpiSetBackColor (HPS hps, LONG lColor);
|
|
BOOL GpiSetBackMix (HPS hps, LONG lMixMode);
|
|
BOOL GpiSetCharAngle (HPS hps, __const__ GRADIENTL *pgradlAngle);
|
|
BOOL GpiSetCharBox (HPS hps, __const__ SIZEF *psizfxBox);
|
|
BOOL GpiSetCharBreakExtra (HPS hps, FIXED BreakExtra);
|
|
BOOL GpiSetCharDirection (HPS hps, LONG lDirection);
|
|
BOOL GpiSetCharExtra (HPS hps, FIXED Extra);
|
|
BOOL GpiSetCharMode (HPS hps, LONG lMode);
|
|
BOOL GpiSetCharSet (HPS hps, LONG llcid);
|
|
BOOL GpiSetCharShear (HPS hps, __const__ POINTL *pptlAngle);
|
|
BOOL GpiSetClipPath (HPS hps, LONG lPath, LONG lOptions);
|
|
LONG GpiSetClipRegion (HPS hps, HRGN hrgn, PHRGN phrgnOld);
|
|
BOOL GpiSetColor (HPS hps, LONG lColor);
|
|
BOOL GpiSetCp (HPS hps, ULONG ulCodePage);
|
|
BOOL GpiSetCurrentPosition (HPS hps, __const__ POINTL *pptlPoint);
|
|
BOOL GpiSetDefArcParams (HPS hps, __const__ ARCPARAMS *parcpArcParams);
|
|
BOOL GpiSetDefAttrs (HPS hps, LONG lPrimType, ULONG flAttrMask,
|
|
__const__ VOID *ppbunAttrs);
|
|
BOOL GpiSetDefaultViewMatrix (HPS hps, LONG lCount,
|
|
__const__ MATRIXLF *pmatlfarray, LONG lOptions);
|
|
BOOL GpiSetDefTag (HPS hps, LONG lTag);
|
|
BOOL GpiSetDefViewingLimits (HPS hps, __const__ RECTL *prclLimits);
|
|
BOOL GpiSetEditMode (HPS hps, LONG lMode);
|
|
BOOL GpiSetElementPointer (HPS hps, LONG lElement);
|
|
BOOL GpiSetElementPointerAtLabel (HPS hps, LONG lLabel);
|
|
BOOL GpiSetGraphicsField (HPS hps, __const__ RECTL *prclField);
|
|
BOOL GpiSetLineEnd (HPS hps, LONG lLineEnd);
|
|
BOOL GpiSetLineJoin (HPS hps, LONG lLineJoin);
|
|
BOOL GpiSetLineType (HPS hps, LONG lLineType);
|
|
BOOL GpiSetLineWidth (HPS hps, FIXED fxLineWidth);
|
|
BOOL GpiSetLineWidthGeom (HPS hps, LONG lLineWidth);
|
|
BOOL GpiSetMarker (HPS hps, LONG lSymbol);
|
|
BOOL GpiSetMarkerBox (HPS hps, __const__ SIZEF *psizfxSize);
|
|
BOOL GpiSetMarkerSet (HPS hps, LONG lSet);
|
|
BOOL GpiSetMetaFileBits (HMF hmf, LONG lOffset, LONG lLength,
|
|
__const__ BYTE *pbBuffer);
|
|
BOOL GpiSetMix (HPS hps, LONG lMixMode);
|
|
BOOL GpiSetModelTransformMatrix (HPS hps, LONG lCount,
|
|
__const__ MATRIXLF *pmatlfArray, LONG lOptions);
|
|
BOOL GpiSetPageViewport (HPS hps, __const__ RECTL *prclViewport);
|
|
BOOL GpiSetPaletteEntries (HPAL hpal, ULONG ulFormat, ULONG ulStart,
|
|
ULONG ulCount, __const__ ULONG *aulTable);
|
|
BOOL GpiSetPattern (HPS hps, LONG lPatternSymbol);
|
|
BOOL GpiSetPatternRefPoint (HPS hps, __const__ POINTL *pptlRefPoint);
|
|
BOOL GpiSetPatternSet (HPS hps, LONG lSet);
|
|
BOOL GpiSetRegion (HPS hps, HRGN hrgn, LONG lcount,
|
|
__const__ RECTL *arclRectangles);
|
|
BOOL GpiSetSegmentTransformMatrix (HPS hps, LONG lSegid, LONG lCount,
|
|
__const__ MATRIXLF *pmatlfarray, LONG lOptions);
|
|
BOOL GpiSetTextAlignment (HPS hps, LONG lHoriz, LONG lVert);
|
|
BOOL GpiSetViewingLimits (HPS hps, __const__ RECTL *prclLimits);
|
|
BOOL GpiSetViewingTransformMatrix (HPS hps, LONG lCount,
|
|
__const__ MATRIXLF *pmatlfArray, LONG lOptions);
|
|
LONG GpiStrokePath (HPS hps, LONG lPath, ULONG flOptions);
|
|
BOOL GpiTranslate (HPS hps, PMATRIXLF pmatlfArray, LONG lOptions,
|
|
__const__ POINTL *pptlTranslation);
|
|
BOOL GpiUnloadFonts (HAB hab, PCSZ pszFilename);
|
|
BOOL GpiUnloadPublicFonts (HAB hab, PCSZ pszFilename);
|
|
|
|
|
|
#if defined (INCL_GPIBITMAPS) || !defined (INCL_NOCOMMON)
|
|
|
|
#define ROP_SRCCOPY 0x00cc
|
|
#define ROP_SRCPAINT 0x00ee
|
|
#define ROP_SRCAND 0x0088
|
|
#define ROP_SRCINVERT 0x0066
|
|
#define ROP_SRCERASE 0x0044
|
|
#define ROP_NOTSRCCOPY 0x0033
|
|
#define ROP_NOTSRCERASE 0x0011
|
|
#define ROP_MERGECOPY 0x00c0
|
|
#define ROP_MERGEPAINT 0x00bb
|
|
#define ROP_PATCOPY 0x00f0
|
|
#define ROP_PATPAINT 0x00fb
|
|
#define ROP_PATINVERT 0x005a
|
|
#define ROP_DSTINVERT 0x0055
|
|
#define ROP_ZERO 0x0000
|
|
#define ROP_ONE 0x00ff
|
|
|
|
#define BBO_OR 0
|
|
#define BBO_AND 1
|
|
#define BBO_IGNORE 2
|
|
#define BBO_PAL_COLORS 4
|
|
#define BBO_NO_COLOR_INFO 8
|
|
|
|
#define FF_BOUNDARY 0
|
|
#define FF_SURFACE 1
|
|
|
|
#define HBM_ERROR ((HBITMAP)(-1))
|
|
|
|
|
|
LONG GpiBitBlt (HPS hpsTarget, HPS hpsSource, LONG lCount,
|
|
__const__ POINTL *aptlPoints, LONG lRop, ULONG flOptions);
|
|
BOOL GpiDeleteBitmap (HBITMAP hbm);
|
|
HBITMAP GpiLoadBitmap (HPS hps, HMODULE Resource, ULONG idBitmap,
|
|
LONG lWidth, LONG lHeight);
|
|
HBITMAP GpiSetBitmap (HPS hps, HBITMAP hbm);
|
|
LONG GpiWCBitBlt (HPS hpsTarget, HBITMAP hbmSource, LONG lCount,
|
|
__const__ POINTL *aptlPoints, LONG lRop, ULONG flOptions);
|
|
|
|
#endif /* INCL_GPIBITMAPS */
|
|
|
|
|
|
#if defined (INCL_GPIBITMAPS)
|
|
|
|
#define BFT_ICON 0x4349
|
|
#define BFT_BMAP 0x4d42
|
|
#define BFT_POINTER 0x5450
|
|
#define BFT_COLORICON 0x4943
|
|
#define BFT_COLORPOINTER 0x5043
|
|
#define BFT_BITMAPARRAY 0x4142
|
|
|
|
#define CBD_BITS 0
|
|
#define CBD_COMPRESSION 1
|
|
#define CBD_DECOMPRESSION 2
|
|
|
|
#define CBD_COLOR_CONVERSION 0x0001
|
|
|
|
#define CBM_INIT 0x0004
|
|
|
|
#define BCA_UNCOMP 0
|
|
#define BCA_RLE8 1
|
|
#define BCA_RLE4 2
|
|
#define BCA_HUFFMAN1D 3
|
|
#define BCA_RLE24 4
|
|
|
|
#define BMB_ERROR (-1)
|
|
|
|
#define BRU_METRIC 0
|
|
|
|
#define BRA_BOTTOMUP 0
|
|
|
|
#define BRH_NOTHALFTONED 0
|
|
#define BRH_ERRORDIFFUSION 1
|
|
#define BRH_PANDA 2
|
|
#define BRH_SUPERCIRCLE 3
|
|
|
|
#define BCE_PALETTE (-1)
|
|
#define BCE_RGB 0
|
|
|
|
|
|
typedef struct _RGB
|
|
{
|
|
BYTE bBlue;
|
|
BYTE bGreen;
|
|
BYTE bRed;
|
|
} RGB;
|
|
|
|
typedef struct _RGB2
|
|
{
|
|
BYTE bBlue;
|
|
BYTE bGreen;
|
|
BYTE bRed;
|
|
BYTE fcOptions;
|
|
} RGB2;
|
|
typedef RGB2 *PRGB2;
|
|
|
|
typedef struct _BITMAPINFOHEADER
|
|
{
|
|
ULONG cbFix;
|
|
USHORT cx;
|
|
USHORT cy;
|
|
USHORT cPlanes;
|
|
USHORT cBitCount;
|
|
} BITMAPINFOHEADER;
|
|
typedef BITMAPINFOHEADER *PBITMAPINFOHEADER;
|
|
|
|
typedef struct _BITMAPINFO
|
|
{
|
|
ULONG cbFix;
|
|
USHORT cx;
|
|
USHORT cy;
|
|
USHORT cPlanes;
|
|
USHORT cBitCount;
|
|
RGB argbColor[1];
|
|
} BITMAPINFO;
|
|
typedef BITMAPINFO *PBITMAPINFO;
|
|
|
|
typedef struct _BITMAPINFO2
|
|
{
|
|
ULONG cbFix;
|
|
ULONG cx;
|
|
ULONG cy;
|
|
USHORT cPlanes;
|
|
USHORT cBitCount;
|
|
ULONG ulCompression;
|
|
ULONG cbImage;
|
|
ULONG cxResolution;
|
|
ULONG cyResolution;
|
|
ULONG cclrUsed;
|
|
ULONG cclrImportant;
|
|
USHORT usUnits;
|
|
USHORT usReserved;
|
|
USHORT usRecording;
|
|
USHORT usRendering;
|
|
ULONG cSize1;
|
|
ULONG cSize2;
|
|
ULONG ulColorEncoding;
|
|
ULONG ulIdentifier;
|
|
RGB2 argbColor[1];
|
|
} BITMAPINFO2;
|
|
typedef BITMAPINFO2 *PBITMAPINFO2;
|
|
|
|
typedef struct _BITMAPINFOHEADER2
|
|
{
|
|
ULONG cbFix;
|
|
ULONG cx;
|
|
ULONG cy;
|
|
USHORT cPlanes;
|
|
USHORT cBitCount;
|
|
ULONG ulCompression;
|
|
ULONG cbImage;
|
|
ULONG cxResolution;
|
|
ULONG cyResolution;
|
|
ULONG cclrUsed;
|
|
ULONG cclrImportant;
|
|
USHORT usUnits;
|
|
USHORT usReserved;
|
|
USHORT usRecording;
|
|
USHORT usRendering;
|
|
ULONG cSize1;
|
|
ULONG cSize2;
|
|
ULONG ulColorEncoding;
|
|
ULONG ulIdentifier;
|
|
} BITMAPINFOHEADER2;
|
|
typedef BITMAPINFOHEADER2 *PBITMAPINFOHEADER2;
|
|
|
|
typedef struct _BITMAPFILEHEADER
|
|
{
|
|
USHORT usType;
|
|
ULONG cbSize;
|
|
SHORT xHotspot;
|
|
SHORT yHotspot;
|
|
ULONG offBits;
|
|
BITMAPINFOHEADER bmp;
|
|
} BITMAPFILEHEADER;
|
|
typedef BITMAPFILEHEADER *PBITMAPFILEHEADER;
|
|
|
|
typedef struct _BITMAPARRAYFILEHEADER
|
|
{
|
|
USHORT usType;
|
|
ULONG cbSize;
|
|
ULONG offNext;
|
|
USHORT cxDisplay;
|
|
USHORT cyDisplay;
|
|
BITMAPFILEHEADER bfh;
|
|
} BITMAPARRAYFILEHEADER;
|
|
typedef BITMAPARRAYFILEHEADER *PBITMAPARRAYFILEHEADER;
|
|
|
|
typedef struct _BITMAPFILEHEADER2
|
|
{
|
|
USHORT usType;
|
|
ULONG cbSize;
|
|
SHORT xHotspot;
|
|
SHORT yHotspot;
|
|
ULONG offBits;
|
|
BITMAPINFOHEADER2 bmp2;
|
|
} BITMAPFILEHEADER2;
|
|
typedef BITMAPFILEHEADER2 *PBITMAPFILEHEADER2;
|
|
|
|
typedef struct _BITMAPARRAYFILEHEADER2
|
|
{
|
|
USHORT usType;
|
|
ULONG cbSize;
|
|
ULONG offNext;
|
|
USHORT cxDisplay;
|
|
USHORT cyDisplay;
|
|
BITMAPFILEHEADER2 bfh2;
|
|
} BITMAPARRAYFILEHEADER2;
|
|
typedef BITMAPARRAYFILEHEADER2 *PBITMAPARRAYFILEHEADER2;
|
|
|
|
|
|
HBITMAP GpiCreateBitmap (HPS hps, __const__ BITMAPINFOHEADER2 *pbmpNew,
|
|
ULONG flOptions, __const__ BYTE *pbInitData,
|
|
__const__ BITMAPINFO2 *pbmiInfoTable);
|
|
LONG GpiDrawBits (HPS hps, __const__ VOID *pBits,
|
|
__const__ BITMAPINFO2 *pbmiInfoTable, LONG lCount,
|
|
__const__ POINTL *aptlPoints, LONG lRop, ULONG flOptions);
|
|
LONG GpiFloodFill (HPS hps, LONG lOptions, LONG lColor);
|
|
LONG GpiQueryBitmapBits (HPS hps, LONG lScanStart, LONG lScans, PBYTE pbBuffer,
|
|
PBITMAPINFO2 pbmiInfoTable);
|
|
BOOL GpiQueryBitmapDimension (HBITMAP hbm, PSIZEL psizlBitmapDimension);
|
|
HBITMAP GpiQueryBitmapHandle (HPS hps, LONG lLcid);
|
|
BOOL GpiQueryBitmapInfoHeader (HBITMAP hbm, PBITMAPINFOHEADER2 pbmpData);
|
|
BOOL GpiQueryBitmapParameters (HBITMAP hbm, PBITMAPINFOHEADER pbmpData);
|
|
BOOL GpiQueryDeviceBitmapFormats (HPS hps, LONG lCount, PLONG alArray);
|
|
LONG GpiSetBitmapBits (HPS hps, LONG lScanStart, LONG lScans,
|
|
__const__ BYTE *pbBuffer, __const__ BITMAPINFO2 *pbmiInfoTable);
|
|
LONG GpiQueryPel (HPS hps, PPOINTL pptlPoint);
|
|
BOOL GpiSetBitmapDimension (HBITMAP hbm,
|
|
__const__ SIZEL *psizlBitmapDimension);
|
|
BOOL GpiSetBitmapId (HPS hps, HBITMAP hbm, LONG lLcid);
|
|
LONG GpiSetPel (HPS hps, __const__ POINTL *pptlPoint);
|
|
|
|
|
|
#endif /* INCL_GPIBITMAPS */
|
|
|
|
|
|
#if defined (INCL_GPICONTROL) || !defined (INCL_NOCOMMON)
|
|
|
|
#define GPIA_NOASSOC 0x0000
|
|
#define GPIA_ASSOC 0x4000
|
|
|
|
#define GPIF_DEFAULT 0x0000
|
|
#define GPIF_SHORT 0x0100
|
|
#define GPIF_LONG 0x0200
|
|
|
|
#define GPIM_AREAEXCL 0x8000
|
|
|
|
#define GPIT_NORMAL 0x0000
|
|
#define GPIT_MICRO 0x1000
|
|
#define GPIT_INK 0x2000
|
|
|
|
#define HDC_ERROR ((HDC)(-1))
|
|
|
|
#define PU_ARBITRARY 0x0004
|
|
#define PU_PELS 0x0008
|
|
#define PU_LOMETRIC 0x000c
|
|
#define PU_HIMETRIC 0x0010
|
|
#define PU_LOENGLISH 0x0014
|
|
#define PU_HIENGLISH 0x0018
|
|
#define PU_TWIPS 0x001c
|
|
|
|
|
|
BOOL GpiAssociate (HPS hps, HDC hdc);
|
|
HPS GpiCreatePS (HAB hab, HDC hdc, PSIZEL psizlSize, ULONG flOptions);
|
|
BOOL GpiDestroyPS (HPS hps);
|
|
BOOL GpiErase (HPS hps);
|
|
HDC GpiQueryDevice (HPS hps);
|
|
BOOL GpiRestorePS (HPS hps, LONG lPSid);
|
|
LONG GpiSavePS (HPS hps);
|
|
|
|
#endif /* INCL_GPICONTROL */
|
|
|
|
|
|
#if defined (INCL_GPICONTROL)
|
|
|
|
#define DCTL_ERASE 1
|
|
#define DCTL_DISPLAY 2
|
|
#define DCTL_BOUNDARY 3
|
|
#define DCTL_DYNAMIC 4
|
|
#define DCTL_CORRELATE 5
|
|
|
|
#define DCTL_ERROR (-1)
|
|
#define DCTL_OFF 0
|
|
#define DCTL_ON 1
|
|
|
|
#define DM_ERROR 0
|
|
#define DM_DRAW 1
|
|
#define DM_RETAIN 2
|
|
#define DM_DRAWANDRETAIN 3
|
|
|
|
#define GPIE_SEGMENT 0
|
|
#define GPIE_ELEMENT 1
|
|
#define GPIE_DATA 2
|
|
|
|
#define GRES_ATTRS 0x0001
|
|
#define GRES_SEGMENTS 0x0002
|
|
#define GRES_ALL 0x0004
|
|
|
|
#define PS_UNITS 0x00fc
|
|
#define PS_FORMAT 0x0f00
|
|
#define PS_TYPE 0x1000
|
|
#define PS_MODE 0x2000
|
|
#define PS_ASSOCIATE 0x4000
|
|
#define PS_NORESET 0x8000
|
|
|
|
#define SDW_ERROR (-1)
|
|
#define SDW_OFF 0
|
|
#define SDW_ON 1
|
|
|
|
|
|
LONG GpiErrorSegmentData (HPS hps, PLONG plSegment, PLONG plContext);
|
|
LONG GpiQueryDrawControl (HPS hps, LONG lControl);
|
|
LONG GpiQueryDrawingMode (HPS hps);
|
|
ULONG GpiQueryPS (HPS hps, PSIZEL psizlSize);
|
|
BOOL GpiResetPS (HPS hps, ULONG flOptions);
|
|
LONG GpiQueryStopDraw (HPS hps);
|
|
BOOL GpiSetDrawControl (HPS hps, LONG lControl, LONG lValue);
|
|
BOOL GpiSetDrawingMode (HPS hps, LONG lMode);
|
|
BOOL GpiSetPS (HPS hps, __const__ SIZEL *psizlsize, ULONG flOptions);
|
|
BOOL GpiSetStopDraw (HPS hps, LONG lValue);
|
|
|
|
#endif /* INCL_GPICONTROL */
|
|
|
|
|
|
#if defined (INCL_GPICORRELATION)
|
|
|
|
#define GPI_HITS 2
|
|
|
|
#define PICKAP_DEFAULT 0
|
|
#define PICKAP_REC 2
|
|
|
|
#define PICKSEL_VISIBLE 0
|
|
#define PICKSEL_ALL 1
|
|
|
|
|
|
LONG GpiCorrelateChain (HPS hps, LONG lType, __const__ POINTL *pptlPick,
|
|
LONG lMaxHits, LONG lMaxDepth, PLONG pl2);
|
|
LONG GpiCorrelateFrom (HPS hps, LONG lFirstSegment, LONG lLastSegment,
|
|
LONG lType, __const__ POINTL *pptlPick, LONG lMaxHits, LONG lMaxDepth,
|
|
PLONG plSegTag);
|
|
LONG GpiCorrelateSegment (HPS hps, LONG lSegment, LONG lType,
|
|
__const__ POINTL *pptlPick, LONG lMaxHits, LONG lMaxDepth, PLONG alSegTag);
|
|
BOOL GpiQueryBoundaryData (HPS hps, PRECTL prclBoundary);
|
|
BOOL GpiQueryPickAperturePosition (HPS hps, PPOINTL pptlPoint);
|
|
BOOL GpiQueryPickApertureSize (HPS hps, PSIZEL psizlSize);
|
|
BOOL GpiQueryTag (HPS hps, PLONG plTag);
|
|
BOOL GpiResetBoundaryData (HPS hps);
|
|
BOOL GpiSetPickAperturePosition (HPS hps, __const__ POINTL *pptlPick);
|
|
BOOL GpiSetPickApertureSize (HPS hps, LONG lOptions,
|
|
__const__ SIZEL *psizlSize);
|
|
BOOL GpiSetTag (HPS hps, LONG lTag);
|
|
|
|
#endif /* INCL_GPICORRELATION */
|
|
|
|
|
|
#if defined (INCL_GPIINK)
|
|
|
|
#define PPE_KEEPPATH 0
|
|
#define PPE_ERASEPATH 1
|
|
|
|
#define PPS_INKMOVE 0
|
|
#define PPS_INKDOWN 1
|
|
#define PPS_INKUP 2
|
|
|
|
|
|
BOOL GpiBeginInkPath (HPS hps, LONG lPath, ULONG flOptions);
|
|
BOOL GpiEndInkPath (HPS hps, ULONG flOptions);
|
|
LONG GpiStrokeInkPath (HPS hps, LONG lPath, LONG lCount,
|
|
__const__ POINTL *aptlPoints, ULONG flOptions);
|
|
|
|
#endif /* INCL_GPIINK */
|
|
|
|
|
|
#if defined (INCL_GPISEGMENTS)
|
|
|
|
#define DFORM_NOCONV 0
|
|
|
|
#define DFORM_S370SHORT 1
|
|
#define DFORM_PCSHORT 2
|
|
#define DFORM_PCLONG 4
|
|
|
|
#define ATTR_ERROR (-1)
|
|
#define ATTR_DETECTABLE 1
|
|
#define ATTR_VISIBLE 2
|
|
#define ATTR_CHAINED 6
|
|
#define ATTR_DYNAMIC 8
|
|
#define ATTR_FASTCHAIN 9
|
|
#define ATTR_PROP_DETECTABLE 10
|
|
#define ATTR_PROP_VISIBLE 11
|
|
|
|
#define ATTR_OFF 0
|
|
#define ATTR_ON 1
|
|
|
|
#define LOWER_PRI (-1)
|
|
#define HIGHER_PRI 1
|
|
|
|
|
|
BOOL GpiCloseSegment (HPS hps);
|
|
BOOL GpiDeleteSegment (HPS hps, LONG lSegid);
|
|
BOOL GpiDeleteSegments (HPS hps, LONG lFirstSegment, LONG lLastSegment);
|
|
BOOL GpiDrawChain (HPS hps);
|
|
BOOL GpiDrawDynamics (HPS hps);
|
|
BOOL GpiDrawFrom (HPS hps, LONG lFirstSegment, LONG lLastSegment);
|
|
BOOL GpiDrawSegment (HPS hps, LONG lSegment);
|
|
LONG GpiGetData (HPS hps, LONG lSegid, PLONG plOffset, LONG lFormat,
|
|
LONG lLength, PBYTE pbData);
|
|
BOOL GpiOpenSegment (HPS hps, LONG lSegment);
|
|
LONG GpiPutData (HPS hps, LONG lFormat, PLONG plCount, __const__ BYTE *pbData);
|
|
LONG GpiQueryInitialSegmentAttrs (HPS hps, LONG lAttribute);
|
|
LONG GpiQuerySegmentAttrs (HPS hps, LONG lSegid, LONG lAttribute);
|
|
LONG GpiQuerySegmentNames (HPS hps, LONG lFirstSegid, LONG lLastSegid,
|
|
LONG lMax, PLONG alSegids);
|
|
LONG GpiQuerySegmentPriority (HPS hps, LONG lRefSegid, LONG lOrder);
|
|
BOOL GpiRemoveDynamics (HPS hps, LONG lFirstSegid, LONG lLastSegid);
|
|
BOOL GpiSetInitialSegmentAttrs (HPS hps, LONG lAttribute, LONG lValue);
|
|
BOOL GpiSetSegmentAttrs (HPS hps, LONG lSegid, LONG lAttribute, LONG lValue);
|
|
BOOL GpiSetSegmentPriority (HPS hps, LONG lSegid, LONG lRefSegid, LONG lOrder);
|
|
|
|
#endif /* INCL_GPISEGMENTS */
|
|
|
|
|
|
/* ---------------------- DEVICE CONTEXTS --------------------------------- */
|
|
|
|
#define DEV_ERROR 0
|
|
#define DEV_OK 1
|
|
#define DEV_BAD_PARAMETERS 2
|
|
#define DEV_WARNING 3
|
|
#define DEV_PROP_BUF_TOO_SMALL 4
|
|
#define DEV_ITEM_BUF_TOO_SMALL 5
|
|
#define DEV_INV_INP_JOBPROPERTIES 6
|
|
|
|
#define ADDRESS 0
|
|
#define DRIVER_NAME 1
|
|
#define DRIVER_DATA 2
|
|
#define DATA_TYPE 3
|
|
#define COMMENT 4
|
|
#define PROC_NAME 5
|
|
#define PROC_PARAMS 6
|
|
#define SPL_PARAMS 7
|
|
#define NETWORK_PARAMS 8
|
|
|
|
#define OD_SCREEN 0
|
|
#define OD_QUEUED 2
|
|
#define OD_DIRECT 5
|
|
#define OD_INFO 6
|
|
#define OD_METAFILE 7
|
|
#define OD_MEMORY 8
|
|
#define OD_METAFILE_NOQUERY 9
|
|
|
|
#define CAPS_FAMILY 0
|
|
#define CAPS_IO_CAPS 1
|
|
#define CAPS_TECHNOLOGY 2
|
|
#define CAPS_DRIVER_VERSION 3
|
|
#define CAPS_WIDTH 4
|
|
#define CAPS_HEIGHT 5
|
|
#define CAPS_WIDTH_IN_CHARS 6
|
|
#define CAPS_HEIGHT_IN_CHARS 7
|
|
#define CAPS_HORIZONTAL_RESOLUTION 8
|
|
#define CAPS_VERTICAL_RESOLUTION 9
|
|
#define CAPS_CHAR_WIDTH 10
|
|
#define CAPS_CHAR_HEIGHT 11
|
|
#define CAPS_SMALL_CHAR_WIDTH 12
|
|
#define CAPS_SMALL_CHAR_HEIGHT 13
|
|
#define CAPS_COLORS 14
|
|
#define CAPS_COLOR_PLANES 15
|
|
#define CAPS_COLOR_BITCOUNT 16
|
|
#define CAPS_COLOR_TABLE_SUPPORT 17
|
|
#define CAPS_MOUSE_BUTTONS 18
|
|
#define CAPS_FOREGROUND_MIX_SUPPORT 19
|
|
#define CAPS_BACKGROUND_MIX_SUPPORT 20
|
|
#define CAPS_DEVICE_WINDOWING 31
|
|
#define CAPS_ADDITIONAL_GRAPHICS 32
|
|
#define CAPS_VIO_LOADABLE_FONTS 21
|
|
#define CAPS_WINDOW_BYTE_ALIGNMENT 22
|
|
#define CAPS_BITMAP_FORMATS 23
|
|
#define CAPS_RASTER_CAPS 24
|
|
#define CAPS_MARKER_HEIGHT 25
|
|
#define CAPS_MARKER_WIDTH 26
|
|
#define CAPS_DEVICE_FONTS 27
|
|
#define CAPS_GRAPHICS_SUBSET 28
|
|
#define CAPS_GRAPHICS_VERSION 29
|
|
#define CAPS_GRAPHICS_VECTOR_SUBSET 30
|
|
#define CAPS_PHYS_COLORS 33
|
|
#define CAPS_COLOR_INDEX 34
|
|
#define CAPS_GRAPHICS_CHAR_WIDTH 35
|
|
#define CAPS_GRAPHICS_CHAR_HEIGHT 36
|
|
#define CAPS_HORIZONTAL_FONT_RES 37
|
|
#define CAPS_VERTICAL_FONT_RES 38
|
|
#define CAPS_DEVICE_FONT_SIM 39
|
|
#define CAPS_LINEWIDTH_THICK 40
|
|
#define CAPS_DEVICE_POLYSET_POINTS 41
|
|
|
|
#define CAPS_IO_DUMMY 1
|
|
#define CAPS_IO_SUPPORTS_OP 2
|
|
#define CAPS_IO_SUPPORTS_IP 3
|
|
#define CAPS_IO_SUPPORTS_IO 4
|
|
|
|
#define CAPS_TECH_UNKNOWN 0
|
|
#define CAPS_TECH_VECTOR_PLOTTER 1
|
|
#define CAPS_TECH_RASTER_DISPLAY 2
|
|
#define CAPS_TECH_RASTER_PRINTER 3
|
|
#define CAPS_TECH_RASTER_CAMERA 4
|
|
#define CAPS_TECH_POSTSCRIPT 5
|
|
|
|
#define CAPS_COLTABL_RGB_8 0x0001
|
|
#define CAPS_COLTABL_RGB_8_PLUS 0x0002
|
|
#define CAPS_COLTABL_TRUE_MIX 0x0004
|
|
#define CAPS_COLTABL_REALIZE 0x0008
|
|
|
|
#define CAPS_FM_OR 0x0001
|
|
#define CAPS_FM_OVERPAINT 0x0002
|
|
#define CAPS_FM_XOR 0x0008
|
|
#define CAPS_FM_LEAVEALONE 0x0010
|
|
#define CAPS_FM_AND 0x0020
|
|
#define CAPS_FM_GENERAL_BOOLEAN 0x0040
|
|
|
|
#define CAPS_BM_OR 0x0001
|
|
#define CAPS_BM_OVERPAINT 0x0002
|
|
#define CAPS_BM_XOR 0x0008
|
|
#define CAPS_BM_LEAVEALONE 0x0010
|
|
#define CAPS_BM_AND 0x0020
|
|
#define CAPS_BM_GENERAL_BOOLEAN 0x0040
|
|
#define CAPS_BM_SRCTRANSPARENT 0x0080
|
|
#define CAPS_BM_DESTTRANSPARENT 0x0100
|
|
|
|
#define CAPS_DEV_WINDOWING_SUPPORT 0x0001
|
|
|
|
#define CAPS_DEV_FONT_SIM_BOLD 0x0001
|
|
#define CAPS_DEV_FONT_SIM_ITALIC 0x0002
|
|
#define CAPS_DEV_FONT_SIM_UNDERSCORE 0x0004
|
|
#define CAPS_DEV_FONT_SIM_STRIKEOUT 0x0008
|
|
|
|
#define CAPS_VDD_DDB_TRANSFER 0x0001
|
|
#define CAPS_GRAPHICS_KERNING_SUPPORT 0x0002
|
|
#define CAPS_FONT_OUTLINE_DEFAULT 0x0004
|
|
#define CAPS_FONT_IMAGE_DEFAULT 0x0008
|
|
#define CAPS_SCALED_DEFAULT_MARKERS 0x0040
|
|
#define CAPS_COLOR_CURSOR_SUPPORT 0x0080
|
|
#define CAPS_PALETTE_MANAGER 0x0100
|
|
#define CAPS_COSMETIC_WIDELINE_SUPPORT 0x0200
|
|
#define CAPS_DIRECT_FILL 0x0400
|
|
#define CAPS_REBUILD_FILLS 0x0800
|
|
#define CAPS_CLIP_FILLS 0x1000
|
|
#define CAPS_ENHANCED_FONTMETRICS 0x2000
|
|
#define CAPS_TRANSFORM_SUPPORT 0x4000
|
|
#define CAPS_EXTERNAL_16_BITCOUNT 0x8000
|
|
|
|
#define CAPS_BYTE_ALIGN_REQUIRED 0
|
|
#define CAPS_BYTE_ALIGN_RECOMMENDED 1
|
|
#define CAPS_BYTE_ALIGN_NOT_REQUIRED 2
|
|
|
|
#define CAPS_RASTER_BITBLT 0x0001
|
|
#define CAPS_RASTER_BANDING 0x0002
|
|
#define CAPS_RASTER_BITBLT_SCALING 0x0004
|
|
#define CAPS_RASTER_SET_PEL 0x0010
|
|
#define CAPS_RASTER_FONTS 0x0020
|
|
#define CAPS_RASTER_FLOOD_FILL 0x0040
|
|
|
|
#define DEVESC_ERROR (-1)
|
|
#define DEVESC_NOTIMPLEMENTED 0
|
|
|
|
#define DEVESC_QUERYESCSUPPORT 0
|
|
#define DEVESC_GETSCALINGFACTOR 1
|
|
#define DEVESC_QUERYVIOCELLSIZES 2
|
|
#define DEVESC_GETCP 8000
|
|
#define DEVESC_STARTDOC 8150
|
|
#define DEVESC_ENDDOC 8151
|
|
#define DEVESC_NEXTBAND 8152
|
|
#define DEVESC_ABORTDOC 8153
|
|
#define DEVESC_GETJOBID 8160
|
|
#define DEVESC_QUERY_RASTER 8161
|
|
#define DEVESC_QUERYSIZE 8162
|
|
#define DEVESC_QUERYJOBPROPERTIES 8163
|
|
#define DEVESC_SETJOBPROPERTIES 8164
|
|
#define DEVESC_DEFAULTJOBPROPERTIES 8165
|
|
#define DEVESC_CHANGEOUTPUTPORT 8166
|
|
#define DEVESC_NEWFRAME 16300
|
|
#define DEVESC_DRAFTMODE 16301
|
|
#define DEVESC_FLUSHOUTPUT 16302
|
|
#define DEVESC_RAWDATA 16303
|
|
#define DEVESC_SETMODE 16304
|
|
#define DEVESC_SEP 16305
|
|
#define DEVESC_MACRO 16307
|
|
#define DEVESC_BEGIN_BITBLT 16309
|
|
#define DEVESC_END_BITBLT 16310
|
|
#define DEVESC_SEND_COMPDATA 16311
|
|
#define DEVESC_DBE_FIRST 24450
|
|
#define DEVESC_DBE_LAST 24455
|
|
#define DEVESC_CHAR_EXTRA 16998
|
|
#define DEVESC_BREAK_EXTRA 16999
|
|
#define DEVESC_STD_JOURNAL 32600
|
|
#define DEVESC_STARTDOC_WPROP 49150
|
|
#define DEVESC_NEWFRAME_WPROP 49151
|
|
|
|
#define DPDM_ERROR (-1)
|
|
#define DPDM_NONE 0
|
|
|
|
#define DPDM_POSTJOBPROP 0
|
|
#define DPDM_CHANGEPROP 1
|
|
#define DPDM_QUERYJOBPROP 2
|
|
|
|
#define DQHC_ERROR (-1)
|
|
|
|
#define HCAPS_CURRENT 1
|
|
#define HCAPS_SELECTABLE 2
|
|
|
|
|
|
typedef PSZ *PDEVOPENDATA;
|
|
|
|
|
|
typedef struct _DRIVDATA
|
|
{
|
|
LONG cb;
|
|
LONG lVersion;
|
|
CHAR szDeviceName[32];
|
|
CHAR abGeneralData[1];
|
|
} DRIVDATA;
|
|
typedef DRIVDATA *PDRIVDATA;
|
|
|
|
typedef struct _DEVOPENSTRUC
|
|
{
|
|
PSZ pszLogAddress;
|
|
PSZ pszDriverName;
|
|
PDRIVDATA pdriv;
|
|
PSZ pszDataType;
|
|
PSZ pszComment;
|
|
PSZ pszQueueProcName;
|
|
PSZ pszQueueProcParams;
|
|
PSZ pszSpoolerParams;
|
|
PSZ pszNetworkParams;
|
|
} DEVOPENSTRUC;
|
|
typedef DEVOPENSTRUC *PDEVOPENSTRUC;
|
|
|
|
typedef struct _ESCMODE
|
|
{
|
|
ULONG mode;
|
|
BYTE modedata[1];
|
|
} ESCMODE;
|
|
typedef ESCMODE *PESCMODE;
|
|
|
|
typedef struct _VIOSIZECOUNT
|
|
{
|
|
LONG maxcount;
|
|
LONG count;
|
|
} VIOSIZECOUNT;
|
|
typedef VIOSIZECOUNT *PVIOSIZECOUNT;
|
|
|
|
typedef struct _VIOFONTCELLSIZE
|
|
{
|
|
LONG cx;
|
|
LONG cy;
|
|
} VIOFONTCELLSIZE;
|
|
typedef VIOFONTCELLSIZE *PVIOFONTCELLSIZE;
|
|
|
|
typedef struct _SFACTORS
|
|
{
|
|
LONG x;
|
|
LONG y;
|
|
} SFACTORS;
|
|
typedef SFACTORS *PSFACTORS;
|
|
|
|
typedef struct _BANDRECT
|
|
{
|
|
LONG xleft;
|
|
LONG ybottom;
|
|
LONG xright;
|
|
LONG ytop;
|
|
} BANDRECT;
|
|
typedef BANDRECT *PBANDRECT;
|
|
|
|
typedef struct _HCINFO
|
|
{
|
|
CHAR szFormname[32];
|
|
LONG cx;
|
|
LONG cy;
|
|
LONG xLeftClip;
|
|
LONG yBottomClip;
|
|
LONG xRightClip;
|
|
LONG yTopClip;
|
|
LONG xPels;
|
|
LONG yPels;
|
|
LONG flAttributes;
|
|
} HCINFO;
|
|
typedef HCINFO *PHCINFO;
|
|
|
|
HMF DevCloseDC (HDC hdc);
|
|
LONG DevEscape (HDC hdc, LONG lCode, LONG lInCount, PBYTE pbInData,
|
|
PLONG plOutCount, PBYTE pbOutData);
|
|
HDC DevOpenDC (HAB hab, LONG lType, PCSZ pszToken, LONG lCount,
|
|
PDEVOPENDATA pdopData, HDC hdcComp);
|
|
LONG DevPostDeviceModes (HAB hab, PDRIVDATA pdrivDriverData ,
|
|
PCSZ pszDriverName, PCSZ pszDeviceName, PCSZ pszName, ULONG flOptions);
|
|
BOOL DevQueryCaps (HDC hdc, LONG lStart, LONG lCount, PLONG alArray);
|
|
BOOL DevQueryDeviceNames (HAB hab, PCSZ pszDriverName, PLONG pldn,
|
|
PSTR32 aDeviceName, PSTR64 aDeviceDesc, PLONG pldt, PSTR16 aDataType);
|
|
LONG DevQueryHardcopyCaps (HDC hdc, LONG lStartForm, LONG lForms,
|
|
PHCINFO phciHcInfo);
|
|
|
|
/* ------------------ PRESENTATION MANAGER SHELL -------------------------- */
|
|
|
|
#define MAXNAMEL 60
|
|
|
|
#define HINI_PROFILE (HINI)0
|
|
#define HINI_USERPROFILE (HINI)(-1)
|
|
#define HINI_SYSTEMPROFILE (HINI)(-2)
|
|
#define HINI_USER HINI_USERPROFILE
|
|
#define HINI_SYSTEM HINI_SYSTEMPROFILE
|
|
|
|
typedef LHANDLE HSWITCH;
|
|
typedef HSWITCH *PHSWITCH;
|
|
|
|
typedef LHANDLE HPROGRAM;
|
|
typedef HPROGRAM *PHPROGRAM;
|
|
|
|
typedef LHANDLE HINI;
|
|
typedef HINI *PHINI;
|
|
|
|
typedef LHANDLE HAPP;
|
|
|
|
|
|
typedef struct _PRFPROFILE
|
|
{
|
|
ULONG cchUserName;
|
|
PSZ pszUserName;
|
|
ULONG cchSysName;
|
|
PSZ pszSysName;
|
|
} PRFPROFILE;
|
|
typedef PRFPROFILE *PPRFPROFILE;
|
|
|
|
|
|
#if defined (INCL_WINPROGRAMLIST)
|
|
|
|
#define MAXPATHL 128
|
|
#define SGH_ROOT (HPROGRAM)(-1L)
|
|
|
|
#define PROG_DEFAULT 0
|
|
#define PROG_FULLSCREEN 1
|
|
#define PROG_WINDOWABLEVIO 2
|
|
#define PROG_PM 3
|
|
#define PROG_GROUP 5
|
|
#define PROG_REAL 4
|
|
#define PROG_VDM 4
|
|
#define PROG_WINDOWEDVDM 7
|
|
#define PROG_DLL 6
|
|
#define PROG_PDD 8
|
|
#define PROG_VDD 9
|
|
#define PROG_WINDOW_REAL 10
|
|
#define PROG_WINDOW_PROT 11
|
|
#define PROG_WINDOW_AUTO 12
|
|
#define PROG_SEAMLESSVDM 13
|
|
#define PROG_SEAMLESSCOMMON 14
|
|
#define PROG_30_STDSEAMLESSCOMMON 14
|
|
#define PROG_31_STDSEAMLESSVDM 15
|
|
#define PROG_31_STDSEAMLESSCOMMON 16
|
|
#define PROG_31_ENHSEAMLESSVDM 17
|
|
#define PROG_31_ENHSEAMLESSCOMMON 18
|
|
#define PROG_31_ENH 19
|
|
#define PROG_31_STD 20
|
|
#define PROG_DOS_GAME 21
|
|
#define PROG_WIN_GAME 22
|
|
#define PROG_DOS_MODE 23
|
|
#define PROG_RESERVED 255
|
|
|
|
#define SAF_VALIDFLAGS 0x001f
|
|
|
|
#define SAF_INSTALLEDCMDLINE 0x0001
|
|
#define SAF_STARTCHILDAPP 0x0002
|
|
#define SAF_MAXIMIZED 0x0004
|
|
#define SAF_MINIMIZED 0x0008
|
|
#define SAF_BACKGROUND 0x0010
|
|
|
|
#define SHE_VISIBLE 0x00
|
|
#define SHE_INVISIBLE 0x01
|
|
#define SHE_RESERVED 0xff
|
|
|
|
#define SHE_UNPROTECTED 0x00
|
|
#define SHE_PROTECTED 0x02
|
|
|
|
|
|
typedef ULONG PROGCATEGORY;
|
|
typedef PROGCATEGORY *PPROGCATEGORY;
|
|
|
|
typedef struct _HPROGARRAY
|
|
{
|
|
HPROGRAM ahprog[1];
|
|
} HPROGARRAY;
|
|
typedef HPROGARRAY *PHPROGARRAY;
|
|
|
|
typedef struct _PROGTYPE
|
|
{
|
|
PROGCATEGORY progc;
|
|
ULONG fbVisible;
|
|
} PROGTYPE;
|
|
typedef PROGTYPE *PPROGTYPE;
|
|
|
|
typedef struct _PROGTITLE
|
|
{
|
|
HPROGRAM hprog;
|
|
PROGTYPE progt;
|
|
PSZ pszTitle;
|
|
} PROGTITLE;
|
|
typedef PROGTITLE *PPROGTITLE;
|
|
|
|
typedef struct _PROGDETAILS
|
|
{
|
|
ULONG Length;
|
|
PROGTYPE progt;
|
|
PSZ pszTitle;
|
|
PSZ pszExecutable;
|
|
PSZ pszParameters;
|
|
PSZ pszStartupDir;
|
|
PSZ pszIcon;
|
|
PSZ pszEnvironment;
|
|
SWP swpInitial;
|
|
} PROGDETAILS;
|
|
typedef PROGDETAILS *PPROGDETAILS;
|
|
|
|
|
|
HPROGRAM PrfAddProgram (HINI hini, PPROGDETAILS pDetails, HPROGRAM hprogGroup);
|
|
BOOL PrfChangeProgram (HINI hini, HPROGRAM hprog, PPROGDETAILS pDetails);
|
|
HPROGRAM PrfCreateGroup (HINI hini, PCSZ pszTitle, UCHAR chVisibility);
|
|
BOOL PrfDestroyGroup (HINI hini, HPROGRAM hprogGroup);
|
|
PROGCATEGORY PrfQueryProgramCategory (HINI hini, PCSZ pszExe);
|
|
ULONG PrfQueryProgramHandle (HINI hini, PCSZ pszExe,
|
|
PHPROGARRAY phprogArray, ULONG cchBufferMax, PULONG pulCount);
|
|
ULONG PrfQueryProgramTitles (HINI hini, HPROGRAM hprogGroup,
|
|
PPROGTITLE pTitles, ULONG ulBufferLength, PULONG pulCount);
|
|
ULONG PrfQueryDefinition (HINI hini, HPROGRAM hprog, PPROGDETAILS pDetails,
|
|
ULONG ulBufferLength);
|
|
BOOL PrfRemoveProgram (HINI hini, HPROGRAM hprog);
|
|
|
|
HAPP WinStartApp (HWND hwndNotify, PPROGDETAILS pDetails,
|
|
PCSZ pszParams, PVOID Reserved, ULONG fbOptions);
|
|
BOOL WinTerminateApp (HAPP happ);
|
|
|
|
#endif /* INCL_WINPROGRAMLIST */
|
|
|
|
|
|
#if defined (INCL_WINSWITCHLIST) || !defined (INCL_NOCOMMON)
|
|
|
|
#define SWL_INVISIBLE 0x01
|
|
#define SWL_GRAYED 0x02
|
|
#define SWL_VISIBLE 0x04
|
|
|
|
#define SWL_NOTJUMPABLE 0x01
|
|
#define SWL_JUMPABLE 0x02
|
|
|
|
typedef struct _SWCNTRL
|
|
{
|
|
HWND hwnd;
|
|
HWND hwndIcon;
|
|
HPROGRAM hprog;
|
|
PID idProcess;
|
|
ULONG idSession;
|
|
ULONG uchVisibility;
|
|
ULONG fbJump;
|
|
CHAR szSwtitle[MAXNAMEL+4];
|
|
ULONG bProgType;
|
|
} SWCNTRL;
|
|
typedef SWCNTRL *PSWCNTRL;
|
|
|
|
HSWITCH WinAddSwitchEntry (__const__ SWCNTRL *pswctl);
|
|
ULONG WinRemoveSwitchEntry (HSWITCH hsw);
|
|
|
|
#endif /* INCL_WINSWITCHLIST || !INCL_NOCOMMON */
|
|
|
|
#if defined (INCL_WINSWITCHLIST)
|
|
|
|
typedef struct _SWENTRY
|
|
{
|
|
HSWITCH hswitch;
|
|
SWCNTRL swctl;
|
|
} SWENTRY;
|
|
typedef SWENTRY *PSWENTRY;
|
|
|
|
typedef struct _SWBLOCK
|
|
{
|
|
ULONG cswentry;
|
|
SWENTRY aswentry[1];
|
|
} SWBLOCK;
|
|
typedef SWBLOCK *PSWBLOCK;
|
|
|
|
|
|
ULONG WinChangeSwitchEntry (HSWITCH hsw, __const__ SWCNTRL *pswctl);
|
|
HSWITCH WinCreateSwitchEntry (HAB hab, __const__ SWCNTRL *pswctl);
|
|
ULONG WinQuerySessionTitle (HAB hab, ULONG usSession, PSZ pszTitle,
|
|
ULONG usTitlelen);
|
|
ULONG WinQuerySwitchEntry (HSWITCH hsw, PSWCNTRL pswctl);
|
|
HSWITCH WinQuerySwitchHandle (HWND hwnd, PID pid);
|
|
ULONG WinQuerySwitchList (HAB hab, PSWBLOCK pswblk, ULONG usDataLength);
|
|
ULONG WinQueryTaskSizePos (HAB hab, ULONG usScreenGroup, PSWP pswp);
|
|
ULONG WinQueryTaskTitle (ULONG usSession, PSZ pszTitle, ULONG usTitlelen);
|
|
ULONG WinSwitchToProgram (HSWITCH hsw);
|
|
|
|
#endif /* INCL_WINSWITCHLIST */
|
|
|
|
|
|
#if defined (INCL_WINSHELLDATA)
|
|
|
|
#define PL_ALTERED 0x008e
|
|
|
|
BOOL PrfCloseProfile (HINI hini);
|
|
HINI PrfOpenProfile (HAB hab, PCSZ pszFileName);
|
|
BOOL PrfQueryProfile (HAB hab, PPRFPROFILE pPrfProfile);
|
|
BOOL PrfQueryProfileData (HINI hini, PCSZ pszApp, PCSZ pszKey, PVOID pBuffer,
|
|
PULONG pulBufferLength);
|
|
LONG PrfQueryProfileInt (HINI hini, PCSZ pszApp, PCSZ pszKey, LONG sDefault);
|
|
BOOL PrfQueryProfileSize (HINI hini, PCSZ pszApp, PCSZ pszKey,
|
|
PULONG pulReqLen);
|
|
ULONG PrfQueryProfileString (HINI hini, PCSZ pszApp, PCSZ pszKey,
|
|
PCSZ pszDefault, PVOID pBuffer, ULONG ulBufferLength);
|
|
BOOL PrfReset (HAB hab, __const__ PRFPROFILE *pPrfProfile);
|
|
BOOL PrfWriteProfileData (HINI hini, PCSZ pszApp, PCSZ pszKey,
|
|
CPVOID pData, ULONG ulDataLength);
|
|
BOOL PrfWriteProfileString (HINI hini, PCSZ pszApp, PCSZ pszKey,
|
|
PCSZ pszData);
|
|
|
|
#endif /* INCL_WINSHELLDATA */
|
|
|
|
/* ------------------ STANDARD DIALOGS: FILE ------------------------------ */
|
|
|
|
#if defined (INCL_WINSTDFILE)
|
|
|
|
#define FDM_FILTER (WM_USER+40)
|
|
#define FDM_VALIDATE (WM_USER+41)
|
|
#define FDM_ERROR (WM_USER+42)
|
|
|
|
#define DID_FILE_DIALOG 256
|
|
#define DID_FILENAME_TXT 257
|
|
#define DID_FILENAME_ED 258
|
|
#define DID_DRIVE_TXT 259
|
|
#define DID_DRIVE_CB 260
|
|
#define DID_FILTER_TXT 261
|
|
#define DID_FILTER_CB 262
|
|
#define DID_DIRECTORY_TXT 263
|
|
#define DID_DIRECTORY_LB 264
|
|
#define DID_FILES_TXT 265
|
|
#define DID_FILES_LB 266
|
|
#define DID_HELP_PB 267
|
|
#define DID_APPLY_PB 268
|
|
#define DID_READ_ONLY 269
|
|
#define DID_DIRECTORY_SELECTED 270
|
|
#define DID_OK_PB DID_OK
|
|
#define DID_CANCEL_PB DID_CANCEL
|
|
|
|
#define FDS_CENTER 0x00000001
|
|
#define FDS_CUSTOM 0x00000002
|
|
#define FDS_FILTERUNION 0x00000004
|
|
#define FDS_HELPBUTTON 0x00000008
|
|
#define FDS_APPLYBUTTON 0x00000010
|
|
#define FDS_PRELOAD_VOLINFO 0x00000020
|
|
#define FDS_MODELESS 0x00000040
|
|
#define FDS_INCLUDE_EAS 0x00000080
|
|
#define FDS_OPEN_DIALOG 0x00000100
|
|
#define FDS_SAVEAS_DIALOG 0x00000200
|
|
#define FDS_MULTIPLESEL 0x00000400
|
|
#define FDS_ENABLEFILELB 0x00000800
|
|
#define FDS_NATIONAL_LANGUAGE 0x80000000
|
|
|
|
#define FDS_EFSELECTION 0
|
|
#define FDS_LBSELECTION 1
|
|
|
|
#define FDS_SUCCESSFUL 0
|
|
#define FDS_ERR_DEALLOCATE_MEMORY 1
|
|
#define FDS_ERR_FILTER_TRUNC 2
|
|
#define FDS_ERR_INVALID_DIALOG 3
|
|
#define FDS_ERR_INVALID_DRIVE 4
|
|
#define FDS_ERR_INVALID_FILTER 5
|
|
#define FDS_ERR_INVALID_PATHFILE 6
|
|
#define FDS_ERR_OUT_OF_MEMORY 7
|
|
#define FDS_ERR_PATH_TOO_LONG 8
|
|
#define FDS_ERR_TOO_MANY_FILE_TYPES 9
|
|
#define FDS_ERR_INVALID_VERSION 10
|
|
#define FDS_ERR_INVALID_CUSTOM_HANDLE 11
|
|
#define FDS_ERR_DIALOG_LOAD_ERROR 12
|
|
#define FDS_ERR_DRIVE_ERROR 13
|
|
|
|
#define IDS_FILE_ALL_FILES_SELECTOR 1000
|
|
#define IDS_FILE_BACK_CUR_PATH 1001
|
|
#define IDS_FILE_BACK_PREV_PATH 1002
|
|
#define IDS_FILE_BACK_SLASH 1003
|
|
#define IDS_FILE_BASE_FILTER 1004
|
|
#define IDS_FILE_BLANK 1005
|
|
#define IDS_FILE_COLON 1006
|
|
#define IDS_FILE_DOT 1007
|
|
#define IDS_FILE_DRIVE_LETTERS 1008
|
|
#define IDS_FILE_FWD_CUR_PATH 1009
|
|
#define IDS_FILE_FWD_PREV_PATH 1010
|
|
#define IDS_FILE_FORWARD_SLASH 1011
|
|
#define IDS_FILE_PARENT_DIR 1012
|
|
#define IDS_FILE_Q_MARK 1013
|
|
#define IDS_FILE_SPLAT 1014
|
|
#define IDS_FILE_SPLAT_DOT 1015
|
|
#define IDS_FILE_SAVEAS_TITLE 1016
|
|
#define IDS_FILE_SAVEAS_FILTER_TXT 1017
|
|
#define IDS_FILE_SAVEAS_FILENM_TXT 1018
|
|
#define IDS_FILE_DUMMY_FILE_NAME 1019
|
|
#define IDS_FILE_DUMMY_FILE_EXT 1020
|
|
#define IDS_FILE_DUMMY_DRIVE 1021
|
|
#define IDS_FILE_DUMMY_ROOT_DIR 1022
|
|
#define IDS_FILE_PATH_PTR 1023
|
|
#define IDS_FILE_VOLUME_PREFIX 1024
|
|
#define IDS_FILE_VOLUME_SUFFIX 1025
|
|
#define IDS_FILE_PATH_PTR2 1026
|
|
#define IDS_FILE_INVALID_CHARS 1027
|
|
#define IDS_FILE_ETC_BACK_SLASH 1028
|
|
#define IDS_FILE_OPEN_PARENTHESIS 1029
|
|
#define IDS_FILE_CLOSE_PARENTHESIS 1030
|
|
#define IDS_FILE_SEMICOLON 1031
|
|
#define IDS_FILE_BAD_DRIVE_NAME 1100
|
|
#define IDS_FILE_BAD_DRIVE_OR_PATH_NAME 1101
|
|
#define IDS_FILE_BAD_FILE_NAME 1102
|
|
#define IDS_FILE_BAD_FQF 1103
|
|
#define IDS_FILE_BAD_NETWORK_NAME 1104
|
|
#define IDS_FILE_BAD_SUB_DIR_NAME 1105
|
|
#define IDS_FILE_DRIVE_NOT_AVAILABLE 1106
|
|
#define IDS_FILE_FQFNAME_TOO_LONG 1107
|
|
#define IDS_FILE_OPEN_DIALOG_NOTE 1108
|
|
#define IDS_FILE_PATH_TOO_LONG 1109
|
|
#define IDS_FILE_SAVEAS_DIALOG_NOTE 1110
|
|
#define IDS_FILE_DRIVE_DISK_CHANGE 1120
|
|
#define IDS_FILE_DRIVE_NOT_READY 1122
|
|
#define IDS_FILE_DRIVE_LOCKED 1123
|
|
#define IDS_FILE_DRIVE_NO_SECTOR 1124
|
|
#define IDS_FILE_DRIVE_SOME_ERROR 1125
|
|
#define IDS_FILE_DRIVE_INVALID 1126
|
|
#define IDS_FILE_INSERT_DISK_NOTE 1127
|
|
#define IDS_FILE_OK_WHEN_READY 1128
|
|
|
|
typedef PSZ APSZ[1];
|
|
typedef APSZ *PAPSZ;
|
|
|
|
typedef struct _FILEDLG
|
|
{
|
|
ULONG cbSize;
|
|
ULONG fl;
|
|
ULONG ulUser;
|
|
LONG lReturn;
|
|
LONG lSRC;
|
|
PSZ pszTitle;
|
|
PSZ pszOKButton;
|
|
PFNWP pfnDlgProc;
|
|
PSZ pszIType;
|
|
PAPSZ papszITypeList;
|
|
PSZ pszIDrive;
|
|
PAPSZ papszIDriveList;
|
|
HMODULE hMod;
|
|
CHAR szFullFile[CCHMAXPATH];
|
|
PAPSZ papszFQFilename;
|
|
ULONG ulFQFCount;
|
|
USHORT usDlgId;
|
|
SHORT x;
|
|
SHORT y;
|
|
SHORT sEAType;
|
|
} FILEDLG;
|
|
typedef FILEDLG *PFILEDLG;
|
|
|
|
|
|
MRESULT WinDefFileDlgProc (HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2);
|
|
HWND WinFileDlg (HWND hwndP, HWND hwndO, PFILEDLG pfild);
|
|
BOOL WinFreeFileDlgList (PAPSZ papszFQFilename);
|
|
|
|
#endif /* INCL_WINSTDFILE */
|
|
|
|
/* ------------------ STANDARD DIALOGS: FONT ------------------------------ */
|
|
|
|
#if defined (INCL_WINSTDFONT)
|
|
|
|
#define FNTM_FACENAMECHANGED (WM_USER+50)
|
|
#define FNTM_POINTSIZECHANGED (WM_USER+51)
|
|
#define FNTM_STYLECHANGED (WM_USER+52)
|
|
#define FNTM_COLORCHANGED (WM_USER+53)
|
|
#define FNTM_UPDATEPREVIEW (WM_USER+54)
|
|
#define FNTM_FILTERLIST (WM_USER+55)
|
|
|
|
#define FNTS_CENTER 0x00000001
|
|
#define FNTS_CUSTOM 0x00000002
|
|
#define FNTS_OWNERDRAWPREVIEW 0x00000004
|
|
#define FNTS_HELPBUTTON 0x00000008
|
|
#define FNTS_APPLYBUTTON 0x00000010
|
|
#define FNTS_RESETBUTTON 0x00000020
|
|
#define FNTS_MODELESS 0x00000040
|
|
#define FNTS_INITFROMFATTRS 0x00000080
|
|
#define FNTS_BITMAPONLY 0x00000100
|
|
#define FNTS_VECTORONLY 0x00000200
|
|
#define FNTS_FIXEDWIDTHONLY 0x00000400
|
|
#define FNTS_PROPORTIONALONLY 0x00000800
|
|
#define FNTS_NOSYNTHESIZEDFONTS 0x00001000
|
|
#define FNTS_NATIONAL_LANGUAGE 0x80000000
|
|
|
|
#define FNTF_NOVIEWSCREENFONTS 0x0001
|
|
#define FNTF_NOVIEWPRINTERFONTS 0x0002
|
|
#define FNTF_SCREENFONTSELECTED 0x0004
|
|
#define FNTF_PRINTERFONTSELECTED 0x0008
|
|
|
|
#define CLRC_FOREGROUND 1
|
|
#define CLRC_BACKGROUND 2
|
|
|
|
#define FNTI_BITMAPFONT 0x0001
|
|
#define FNTI_VECTORFONT 0x0002
|
|
#define FNTI_FIXEDWIDTHFONT 0x0004
|
|
#define FNTI_PROPORTIONALFONT 0x0008
|
|
#define FNTI_SYNTHESIZED 0x0010
|
|
#define FNTI_DEFAULTLIST 0x0020
|
|
#define FNTI_FAMILYNAME 0x0100
|
|
#define FNTI_STYLENAME 0x0200
|
|
#define FNTI_POINTSIZE 0x0400
|
|
|
|
#define FNTS_SUCCESSFUL 0
|
|
#define FNTS_ERR_INVALID_DIALOG 3
|
|
#define FNTS_ERR_ALLOC_SHARED_MEM 4
|
|
#define FNTS_ERR_INVALID_PARM 5
|
|
#define FNTS_ERR_OUT_OF_MEMORY 7
|
|
#define FNTS_ERR_INVALID_VERSION 10
|
|
#define FNTS_ERR_DIALOG_LOAD_ERROR 12
|
|
|
|
#define DID_FONT_DIALOG 300
|
|
#define DID_NAME 301
|
|
#define DID_STYLE 302
|
|
#define DID_DISPLAY_FILTER 303
|
|
#define DID_PRINTER_FILTER 304
|
|
#define DID_SIZE 305
|
|
#define DID_SAMPLE 306
|
|
#define DID_OUTLINE 307
|
|
#define DID_UNDERSCORE 308
|
|
#define DID_STRIKEOUT 309
|
|
#define DID_HELP_BUTTON 310
|
|
#define DID_APPLY_BUTTON 311
|
|
#define DID_RESET_BUTTON 312
|
|
#define DID_OK_BUTTON DID_OK
|
|
#define DID_CANCEL_BUTTON DID_CANCEL
|
|
#define DID_NAME_PREFIX 313
|
|
#define DID_STYLE_PREFIX 314
|
|
#define DID_SIZE_PREFIX 315
|
|
#define DID_SAMPLE_GROUPBOX 316
|
|
#define DID_EMPHASIS_GROUPBOX 317
|
|
#define DID_FONT_ISO_SUPPORT 318
|
|
#define DID_FONT_ISO_UNTESTED 319
|
|
|
|
#define IDS_FONT_SAMPLE 350
|
|
#define IDS_FONT_BLANK 351
|
|
#define IDS_FONT_KEY_0 352
|
|
#define IDS_FONT_KEY_9 353
|
|
#define IDS_FONT_KEY_SEP 354
|
|
#define IDS_FONT_DISP_ONLY 355
|
|
#define IDS_FONT_PRINTER_ONLY 356
|
|
#define IDS_FONT_COMBINED 357
|
|
#define IDS_FONT_WEIGHT1 358
|
|
#define IDS_FONT_WEIGHT2 359
|
|
#define IDS_FONT_WEIGHT3 360
|
|
#define IDS_FONT_WEIGHT4 361
|
|
#define IDS_FONT_WEIGHT5 362
|
|
#define IDS_FONT_WEIGHT6 363
|
|
#define IDS_FONT_WEIGHT7 364
|
|
#define IDS_FONT_WEIGHT8 365
|
|
#define IDS_FONT_WEIGHT9 366
|
|
#define IDS_FONT_WIDTH1 367
|
|
#define IDS_FONT_WIDTH2 368
|
|
#define IDS_FONT_WIDTH3 369
|
|
#define IDS_FONT_WIDTH4 370
|
|
#define IDS_FONT_WIDTH5 371
|
|
#define IDS_FONT_WIDTH6 372
|
|
#define IDS_FONT_WIDTH7 373
|
|
#define IDS_FONT_WIDTH8 374
|
|
#define IDS_FONT_WIDTH9 375
|
|
#define IDS_FONT_OPTION0 376
|
|
#define IDS_FONT_OPTION1 377
|
|
#define IDS_FONT_OPTION2 378
|
|
#define IDS_FONT_OPTION3 379
|
|
#define IDS_FONT_POINT_SIZE_LIST 380
|
|
|
|
typedef struct _FONTDLG
|
|
{
|
|
ULONG cbSize;
|
|
HPS hpsScreen;
|
|
HPS hpsPrinter;
|
|
PSZ pszTitle;
|
|
PSZ pszPreview;
|
|
PSZ pszPtSizeList;
|
|
PFNWP pfnDlgProc;
|
|
PSZ pszFamilyname;
|
|
FIXED fxPointSize;
|
|
ULONG fl;
|
|
ULONG flFlags;
|
|
ULONG flType;
|
|
ULONG flTypeMask;
|
|
ULONG flStyle;
|
|
ULONG flStyleMask;
|
|
LONG clrFore;
|
|
LONG clrBack;
|
|
ULONG ulUser;
|
|
LONG lReturn;
|
|
LONG lSRC;
|
|
LONG lEmHeight;
|
|
LONG lXHeight;
|
|
LONG lExternalLeading;
|
|
HMODULE hMod;
|
|
FATTRS fAttrs;
|
|
SHORT sNominalPointSize;
|
|
USHORT usWeight;
|
|
USHORT usWidth;
|
|
SHORT x;
|
|
SHORT y;
|
|
USHORT usDlgId;
|
|
USHORT usFamilyBufLen;
|
|
USHORT usReserved;
|
|
} FONTDLG;
|
|
typedef FONTDLG *PFONTDLG;
|
|
|
|
typedef struct _STYLECHANGE
|
|
{
|
|
USHORT usWeight;
|
|
USHORT usWeightOld;
|
|
USHORT usWidth;
|
|
USHORT usWidthOld;
|
|
ULONG flType;
|
|
ULONG flTypeOld;
|
|
ULONG flTypeMask;
|
|
ULONG flTypeMaskOld;
|
|
ULONG flStyle;
|
|
ULONG flStyleOld;
|
|
ULONG flStyleMask;
|
|
ULONG flStyleMaskOld;
|
|
} STYLECHANGE;
|
|
typedef STYLECHANGE *PSTYLECHANGE;
|
|
|
|
HWND WinFontDlg (HWND hwndP, HWND hwndO, PFONTDLG pfntd);
|
|
MRESULT WinDefFontDlgProc (HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2);
|
|
|
|
#endif /* INCL_WINSTDFONT */
|
|
|
|
/* -------------------------- SPIN BUTTON --------------------------------- */
|
|
|
|
#if defined (INCL_WINSTDSPIN)
|
|
|
|
#define SPBS_ALLCHARACTERS 0x0000
|
|
#define SPBS_NUMERICONLY 0x0001
|
|
#define SPBS_READONLY 0x0002
|
|
#define SPBS_SERVANT 0x0000
|
|
#define SPBS_MASTER 0x0010
|
|
#define SPBS_JUSTDEFAULT 0x0000
|
|
#define SPBS_JUSTRIGHT 0x0004
|
|
#define SPBS_JUSTLEFT 0x0008
|
|
#define SPBS_JUSTCENTER 0x000c
|
|
#define SPBS_NOBORDER 0x0020
|
|
#define SPBS_PADWITHZEROS 0x0080
|
|
#define SPBS_FASTSPIN 0x0100
|
|
|
|
#define SPBM_OVERRIDESETLIMITS 0x0200
|
|
#define SPBM_QUERYLIMITS 0x0201
|
|
#define SPBM_SETTEXTLIMIT 0x0202
|
|
#define SPBM_SPINUP 0x0203
|
|
#define SPBM_SPINDOWN 0x0204
|
|
#define SPBM_QUERYVALUE 0x0205
|
|
#define SPBM_SETARRAY 0x0206
|
|
#define SPBM_SETLIMITS 0x0207
|
|
#define SPBM_SETCURRENTVALUE 0x0208
|
|
#define SPBM_SETMASTER 0x0209
|
|
|
|
#define SPBN_UPARROW 0x020a
|
|
#define SPBN_DOWNARROW 0x020b
|
|
#define SPBN_ENDSPIN 0x020c
|
|
#define SPBN_CHANGE 0x020d
|
|
#define SPBN_SETFOCUS 0x020e
|
|
#define SPBN_KILLFOCUS 0x020f
|
|
|
|
#define SPBQ_UPDATEIFVALID 0
|
|
#define SPBQ_ALWAYSUPDATE 1
|
|
#define SPBQ_DONOTUPDATE 3
|
|
|
|
#endif /* INCL_WINSTDSPIN */
|
|
|
|
/* ----------------------------- SLIDER ----------------------------------- */
|
|
|
|
#if defined (INCL_WINSTDSLIDER)
|
|
|
|
#define SLM_ADDDETENT 0x0369
|
|
#define SLM_QUERYDETENTPOS 0x036a
|
|
#define SLM_QUERYSCALETEXT 0x036b
|
|
#define SLM_QUERYSLIDERINFO 0x036c
|
|
#define SLM_QUERYTICKPOS 0x036d
|
|
#define SLM_QUERYTICKSIZE 0x036e
|
|
#define SLM_REMOVEDETENT 0x036f
|
|
#define SLM_SETSCALETEXT 0x0370
|
|
#define SLM_SETSLIDERINFO 0x0371
|
|
#define SLM_SETTICKSIZE 0x0372
|
|
|
|
#define SLN_CHANGE 1
|
|
#define SLN_SLIDERTRACK 2
|
|
#define SLN_SETFOCUS 3
|
|
#define SLN_KILLFOCUS 4
|
|
|
|
#define SLS_HORIZONTAL 0x0000
|
|
#define SLS_VERTICAL 0x0001
|
|
#define SLS_CENTER 0x0000
|
|
#define SLS_BOTTOM 0x0002
|
|
#define SLS_TOP 0x0004
|
|
#define SLS_LEFT 0x0002
|
|
#define SLS_RIGHT 0x0004
|
|
#define SLS_SNAPTOINCREMENT 0x0008
|
|
#define SLS_BUTTONSBOTTOM 0x0010
|
|
#define SLS_BUTTONSTOP 0x0020
|
|
#define SLS_BUTTONSLEFT 0x0010
|
|
#define SLS_BUTTONSRIGHT 0x0020
|
|
#define SLS_OWNERDRAW 0x0040
|
|
#define SLS_READONLY 0x0080
|
|
#define SLS_RIBBONSTRIP 0x0100
|
|
#define SLS_HOMEBOTTOM 0x0000
|
|
#define SLS_HOMETOP 0x0200
|
|
#define SLS_HOMELEFT 0x0000
|
|
#define SLS_HOMERIGHT 0x0200
|
|
#define SLS_PRIMARYSCALE1 0x0000
|
|
#define SLS_PRIMARYSCALE2 0x0400
|
|
|
|
#define SMA_SCALE1 0x0001
|
|
#define SMA_SCALE2 0x0002
|
|
#define SMA_SHAFTDIMENSIONS 0x0000
|
|
#define SMA_SHAFTPOSITION 0x0001
|
|
#define SMA_SLIDERARMDIMENSIONS 0x0002
|
|
#define SMA_SLIDERARMPOSITION 0x0003
|
|
#define SMA_RANGEVALUE 0x0000
|
|
#define SMA_INCREMENTVALUE 0x0001
|
|
#define SMA_SETALLTICKS 0xffff
|
|
|
|
#define SDA_RIBBONSTRIP 1
|
|
#define SDA_SLIDERSHAFT 2
|
|
#define SDA_BACKGROUND 3
|
|
#define SDA_SLIDERARM 4
|
|
|
|
#define PMERR_UPDATE_IN_PROGRESS 0x1f06
|
|
#define SLDERR_INVALID_PARAMETERS (-1)
|
|
|
|
|
|
typedef struct _SLDCDATA
|
|
{
|
|
ULONG cbSize;
|
|
USHORT usScale1Increments;
|
|
USHORT usScale1Spacing;
|
|
USHORT usScale2Increments;
|
|
USHORT usScale2Spacing;
|
|
} SLDCDATA;
|
|
typedef SLDCDATA *PSLDCDATA;
|
|
|
|
#endif /* INCL_WINSTDSLIDER */
|
|
|
|
/* ------------------------- CIRCULAR SLIDER ------------------------------ */
|
|
|
|
#if defined (INCL_WINCIRCULARSLIDER)
|
|
|
|
#define CSM_QUERYRANGE 0x053d
|
|
#define CSM_SETRANGE 0x053e
|
|
#define CSM_QUERYVALUE 0x053f
|
|
#define CSM_SETVALUE 0x0540
|
|
#define CSM_QUERYRADIUS 0x0541
|
|
#define CSM_SETINCREMENT 0x0542
|
|
#define CSM_QUERYINCREMENT 0x0543
|
|
#define CSM_SETBITMAPDATA 0x0544
|
|
#define CSN_SETFOCUS 0x0548
|
|
#define CSN_CHANGED 0x0549
|
|
#define CSN_TRACKING 0x054a
|
|
#define CSN_QUERYBACKGROUNDCOLOR 0x054b
|
|
|
|
#define CSS_NOBUTTON 0x0001
|
|
#define CSS_NOTEXT 0x0002
|
|
#define CSS_NONUMBER 0x0004
|
|
#define CSS_POINTSELECT 0x0008
|
|
#define CSS_360 0x0010
|
|
#define CSS_MIDPOINT 0x0020
|
|
#define CSS_PROPORTIONALTICKS 0x0040
|
|
#define CSS_NOTICKS 0x0080
|
|
#define CSS_CIRCULARVALUE 0x0100
|
|
|
|
typedef struct _CSBITMAPDATA
|
|
{
|
|
HBITMAP hbmLeftUp;
|
|
HBITMAP hbmLeftDown;
|
|
HBITMAP hbmRightUp;
|
|
HBITMAP hbmRightDown;
|
|
} CSBITMAPDATA;
|
|
typedef CSBITMAPDATA *PCSBITMAPDATA;
|
|
|
|
#endif /* INCL_WINCIRCULARSLIDER */
|
|
|
|
/* ---------------------------- NOTEBOOK ---------------------------------- */
|
|
|
|
#if defined (INCL_WINSTDBOOK)
|
|
|
|
#define BFA_PAGEDATA 0x0001
|
|
#define BFA_PAGEFROMHWND 0x0002
|
|
#define BFA_PAGEFROMDLGTEMPLATE 0x0004
|
|
#define BFA_PAGEFROMDLGRES 0x0008
|
|
#define BFA_STATUSLINE 0x0010
|
|
#define BFA_MAJORTABBITMAP 0x0020
|
|
#define BFA_MINORTABBITMAP 0x0040
|
|
#define BFA_MAJORTABTEXT 0x0080
|
|
#define BFA_MINORTABTEXT 0x0100
|
|
#define BFA_BIDIINFO 0x0200
|
|
|
|
#define BKM_CALCPAGERECT 0x0353
|
|
#define BKM_DELETEPAGE 0x0354
|
|
#define BKM_INSERTPAGE 0x0355
|
|
#define BKM_INVALIDATETABS 0x0356
|
|
#define BKM_TURNTOPAGE 0x0357
|
|
#define BKM_QUERYPAGECOUNT 0x0358
|
|
#define BKM_QUERYPAGEID 0x0359
|
|
#define BKM_QUERYPAGEDATA 0x035a
|
|
#define BKM_QUERYPAGEWINDOWHWND 0x035b
|
|
#define BKM_QUERYTABBITMAP 0x035c
|
|
#define BKM_QUERYTABTEXT 0x035d
|
|
#define BKM_SETDIMENSIONS 0x035e
|
|
#define BKM_SETPAGEDATA 0x035f
|
|
#define BKM_SETPAGEWINDOWHWND 0x0360
|
|
#define BKM_SETSTATUSLINETEXT 0x0361
|
|
#define BKM_SETTABBITMAP 0x0362
|
|
#define BKM_SETTABTEXT 0x0363
|
|
#define BKM_SETNOTEBOOKCOLORS 0x0364
|
|
#define BKM_QUERYPAGESTYLE 0x0365
|
|
#define BKM_QUERYSTATUSLINETEXT 0x0366
|
|
#define BKM_SETPAGEINFO 0x0367
|
|
#define BKM_QUERYPAGEINFO 0x0368
|
|
#define BKM_SETTABCOLOR 0x0374
|
|
#define BKM_SETNOTEBOOKBUTTONS 0x0375
|
|
|
|
#define BKN_PAGESELECTED 0x0082
|
|
#define BKN_NEWPAGESIZE 0x0083
|
|
#define BKN_HELP 0x0084
|
|
#define BKN_PAGEDELETED 0x0085
|
|
#define BKN_PAGESELECTEDPENDING 0x0086
|
|
|
|
#define BKA_ALL 0x0001
|
|
#define BKA_SINGLE 0x0002
|
|
#define BKA_TAB 0x0004
|
|
|
|
#define BKA_LAST 0x0002
|
|
#define BKA_FIRST 0x0004
|
|
#define BKA_NEXT 0x0008
|
|
#define BKA_PREV 0x0010
|
|
#define BKA_TOP 0x0020
|
|
|
|
#define BKA_MAJORTAB 0x0001
|
|
#define BKA_MINORTAB 0x0002
|
|
#define BKA_PAGEBUTTON 0x0100
|
|
|
|
#define BKA_STATUSTEXTON 0x0001
|
|
#define BKA_MAJOR 0x0040
|
|
#define BKA_MINOR 0x0080
|
|
#define BKA_AUTOPAGESIZE 0x0100
|
|
#define BKA_END 0x0200
|
|
|
|
#define BKA_TEXT 0x0400
|
|
#define BKA_BITMAP 0x0800
|
|
|
|
#define BKA_AUTOCOLOR (-1)
|
|
#define BKA_MAXBUTTONID 7999
|
|
|
|
#define BKS_BACKPAGESBR 0x0001
|
|
#define BKS_BACKPAGESBL 0x0002
|
|
#define BKS_BACKPAGESTR 0x0004
|
|
#define BKS_BACKPAGESTL 0x0008
|
|
|
|
#define BKS_MAJORTABRIGHT 0x0010
|
|
#define BKS_MAJORTABLEFT 0x0020
|
|
#define BKS_MAJORTABTOP 0x0040
|
|
#define BKS_MAJORTABBOTTOM 0x0080
|
|
|
|
#define BKS_SQUARETABS 0x0000
|
|
#define BKS_ROUNDEDTABS 0x0100
|
|
#define BKS_POLYGONTABS 0x0200
|
|
|
|
#define BKS_SOLIDBIND 0x0000
|
|
#define BKS_SPIRALBIND 0x0400
|
|
|
|
#define BKS_STATUSTEXTLEFT 0x0000
|
|
#define BKS_STATUSTEXTRIGHT 0x1000
|
|
#define BKS_STATUSTEXTCENTER 0x2000
|
|
|
|
#define BKS_TABTEXTLEFT 0x0000
|
|
#define BKS_TABTEXTRIGHT 0x4000
|
|
#define BKS_TABTEXTCENTER 0x8000
|
|
|
|
#define BKS_BUTTONAREA 0x0200
|
|
#define BKS_TABBEDDIALOG 0x0800
|
|
|
|
#define BKA_BACKGROUNDPAGECOLORINDEX 0x0001
|
|
#define BKA_BACKGROUNDPAGECOLOR 0x0002
|
|
#define BKA_BACKGROUNDMAJORCOLORINDEX 0x0003
|
|
#define BKA_BACKGROUNDMAJORCOLOR 0x0004
|
|
#define BKA_BACKGROUNDMINORCOLORINDEX 0x0005
|
|
#define BKA_BACKGROUNDMINORCOLOR 0x0006
|
|
#define BKA_FOREGROUNDMAJORCOLORINDEX 0x0007
|
|
#define BKA_FOREGROUNDMAJORCOLOR 0x0008
|
|
#define BKA_FOREGROUNDMINORCOLORINDEX 0x0009
|
|
#define BKA_FOREGROUNDMINORCOLOR 0x000a
|
|
|
|
#define BOOKERR_INVALID_PARAMETERS (-1)
|
|
|
|
|
|
typedef struct _BOOKTEXT
|
|
{
|
|
PSZ pString;
|
|
ULONG textLen;
|
|
} BOOKTEXT;
|
|
typedef BOOKTEXT *PBOOKTEXT;
|
|
|
|
typedef struct _NOTEBOOKBUTTON
|
|
{
|
|
PSZ pszText;
|
|
ULONG idButton;
|
|
LHANDLE hImage;
|
|
LONG flStyle;
|
|
} NOTEBOOKBUTTON;
|
|
typedef NOTEBOOKBUTTON *PNOTEBOOKBUTTON;
|
|
|
|
typedef struct _DELETENOTIFY
|
|
{
|
|
HWND hwndBook;
|
|
HWND hwndPage;
|
|
ULONG ulAppPageData;
|
|
HBITMAP hbmTab;
|
|
} DELETENOTIFY;
|
|
typedef DELETENOTIFY *PDELETENOTIFY;
|
|
|
|
typedef struct _PAGESELECTNOTIFY
|
|
{
|
|
HWND hwndBook;
|
|
ULONG ulPageIdCur;
|
|
ULONG ulPageIdNew;
|
|
} PAGESELECTNOTIFY;
|
|
typedef PAGESELECTNOTIFY *PPAGESELECTNOTIFY;
|
|
|
|
typedef struct _BOOKPAGEINFO
|
|
{
|
|
ULONG cb;
|
|
ULONG fl;
|
|
BOOL bLoadDlg;
|
|
ULONG ulPageData;
|
|
HWND hwndPage;
|
|
PFN pfnPageDlgProc;
|
|
ULONG idPageDlg;
|
|
HMODULE hmodPageDlg;
|
|
PVOID pPageDlgCreateParams;
|
|
PDLGTEMPLATE pdlgtPage;
|
|
ULONG cbStatusLine;
|
|
PSZ pszStatusLine;
|
|
HBITMAP hbmMajorTab;
|
|
HBITMAP hbmMinorTab;
|
|
ULONG cbMajorTab;
|
|
PSZ pszMajorTab;
|
|
ULONG cbMinorTab;
|
|
PSZ pszMinorTab;
|
|
PVOID pBidiInfo;
|
|
} BOOKPAGEINFO;
|
|
typedef BOOKPAGEINFO *PBOOKPAGEINFO;
|
|
|
|
#endif /* INCL_WINSTDBOOK */
|
|
|
|
/* -------------------------- DRAG AND DROP ------------------------------- */
|
|
|
|
#if defined (INCL_WINSTDDRAG)
|
|
|
|
#define PMERR_NOT_DRAGGING 0x1f00
|
|
#define PMERR_ALREADY_DRAGGING 0x1f01
|
|
|
|
#define WM_DRAGFIRST 0x0310
|
|
#define WM_DRAGLAST 0x032f
|
|
|
|
#define DM_DROP 0x032f
|
|
#define DM_DRAGOVER 0x032e
|
|
#define DM_DRAGLEAVE 0x032d
|
|
#define DM_DROPHELP 0x032c
|
|
#define DM_ENDCONVERSATION 0x032b
|
|
#define DM_PRINT 0x032a
|
|
#define DM_RENDER 0x0329
|
|
#define DM_RENDERCOMPLETE 0x0328
|
|
#define DM_RENDERPREPARE 0x0327
|
|
#define DM_DRAGFILECOMPLETE 0x0326
|
|
#define DM_EMPHASIZETARGET 0x0325
|
|
#define DM_DRAGERROR 0x0324
|
|
#define DM_FILERENDERED 0x0323
|
|
#define DM_RENDERFILE 0x0322
|
|
#define DM_DRAGOVERNOTIFY 0x0321
|
|
#define DM_PRINTOBJECT 0x0320
|
|
#define DM_DISCARDOBJECT 0x031f
|
|
#define DM_DROPNOTIFY 0x031e
|
|
|
|
#define MSGF_DRAG 0x0010
|
|
|
|
#define DC_OPEN 0x0001
|
|
#define DC_REF 0x0002
|
|
#define DC_GROUP 0x0004
|
|
#define DC_CONTAINER 0x0008
|
|
#define DC_PREPARE 0x0010
|
|
#define DC_REMOVEABLEMEDIA 0x0020
|
|
|
|
#define DF_MOVE 0x0001
|
|
#define DF_SOURCE 0x0002
|
|
#define DF_SUCCESSFUL 0x0004
|
|
|
|
#define DFF_MOVE 1
|
|
#define DFF_COPY 2
|
|
#define DFF_DELETE 3
|
|
|
|
#define DGS_DRAGINPROGRESS 0x0001
|
|
#define DGS_LAZYDRAGINPROGRESS 0x0002
|
|
|
|
#define DME_IGNOREABORT 1
|
|
#define DME_IGNORECONTINUE 2
|
|
#define DME_REPLACE 3
|
|
#define DME_RETRY 4
|
|
|
|
#define DMFL_TARGETSUCCESSFUL 0x0001
|
|
#define DMFL_TARGETFAIL 0x0002
|
|
#define DMFL_NATIVERENDER 0x0004
|
|
#define DMFL_RENDERRETRY 0x0008
|
|
#define DMFL_RENDEROK 0x0010
|
|
#define DMFL_RENDERFAIL 0x0020
|
|
|
|
#define DO_DEFAULT 0xbffe
|
|
#define DO_UNKNOWN 0xbfff
|
|
#define DO_COPYABLE 0x0001
|
|
#define DO_MOVEABLE 0x0002
|
|
#define DO_LINKABLE 0x0004
|
|
#define DO_CREATEABLE 0x0008
|
|
#define DO_CREATEPROGRAMOBJECTABLE 0x0010
|
|
|
|
#define DO_COPY 0x0010
|
|
#define DO_MOVE 0x0020
|
|
#define DO_LINK 0x0018
|
|
#define DO_CREATE 0x0040
|
|
#define DO_CREATEPROGRAMOBJECT 0x0080
|
|
|
|
#define DOR_NODROP 0x0000
|
|
#define DOR_DROP 0x0001
|
|
#define DOR_NODROPOP 0x0002
|
|
#define DOR_NEVERDROP 0x0003
|
|
|
|
#define DRG_ICON 0x0001
|
|
#define DRG_BITMAP 0x0002
|
|
#define DRG_POLYGON 0x0004
|
|
#define DRG_STRETCH 0x0008
|
|
#define DRG_TRANSPARENT 0x0010
|
|
#define DRG_CLOSED 0x0020
|
|
#define DRG_MINIBITMAP 0x0040
|
|
|
|
#define DRR_SOURCE 1
|
|
#define DRR_TARGET 2
|
|
#define DRR_ABORT 3
|
|
|
|
#define DRT_ASM "Assembler Code"
|
|
#define DRT_BASIC "BASIC Code"
|
|
#define DRT_BINDATA "Binary Data"
|
|
#define DRT_BITMAP "Bitmap"
|
|
#define DRT_C "C Code"
|
|
#define DRT_COBOL "COBOL Code"
|
|
#define DRT_DLL "Dynamic Link Library"
|
|
#define DRT_DOSCMD "DOS Command File"
|
|
#define DRT_EXE "Executable"
|
|
#define DRT_FORTRAN "FORTRAN Code"
|
|
#define DRT_ICON "Icon"
|
|
#define DRT_LIB "Library"
|
|
#define DRT_METAFILE "Metafile"
|
|
#define DRT_OS2CMD "OS/2 Command File"
|
|
#define DRT_PASCAL "Pascal Code"
|
|
#define DRT_RESOURCE "Resource File"
|
|
#define DRT_TEXT "Plain Text"
|
|
#define DRT_UNKNOWN "Unknown"
|
|
|
|
typedef LHANDLE HSTR;
|
|
|
|
typedef struct _DRAGIMAGE
|
|
{
|
|
USHORT cb;
|
|
USHORT cptl;
|
|
LHANDLE hImage;
|
|
SIZEL sizlStretch;
|
|
ULONG fl;
|
|
SHORT cxOffset;
|
|
SHORT cyOffset;
|
|
} DRAGIMAGE;
|
|
typedef DRAGIMAGE *PDRAGIMAGE;
|
|
|
|
typedef struct _DRAGINFO
|
|
{
|
|
ULONG cbDraginfo;
|
|
USHORT cbDragitem;
|
|
USHORT usOperation;
|
|
HWND hwndSource;
|
|
SHORT xDrop;
|
|
SHORT yDrop;
|
|
USHORT cditem;
|
|
USHORT usReserved;
|
|
} DRAGINFO;
|
|
typedef DRAGINFO *PDRAGINFO;
|
|
|
|
typedef struct _DRAGITEM
|
|
{
|
|
HWND hwndItem;
|
|
ULONG ulItemID;
|
|
HSTR hstrType;
|
|
HSTR hstrRMF;
|
|
HSTR hstrContainerName;
|
|
HSTR hstrSourceName;
|
|
HSTR hstrTargetName;
|
|
SHORT cxOffset;
|
|
SHORT cyOffset;
|
|
USHORT fsControl;
|
|
USHORT fsSupportedOps;
|
|
} DRAGITEM;
|
|
typedef DRAGITEM *PDRAGITEM;
|
|
|
|
typedef struct _DRAGTRANSFER
|
|
{
|
|
ULONG cb;
|
|
HWND hwndClient;
|
|
PDRAGITEM pditem;
|
|
HSTR hstrSelectedRMF;
|
|
HSTR hstrRenderToName;
|
|
ULONG ulTargetInfo;
|
|
USHORT usOperation;
|
|
USHORT fsReply;
|
|
} DRAGTRANSFER;
|
|
typedef DRAGTRANSFER *PDRAGTRANSFER;
|
|
|
|
typedef struct _RENDERFILE
|
|
{
|
|
HWND hwndDragFiles;
|
|
HSTR hstrSource;
|
|
HSTR hstrTarget;
|
|
USHORT fMove;
|
|
USHORT usRsvd;
|
|
} RENDERFILE;
|
|
typedef RENDERFILE *PRENDERFILE;
|
|
|
|
|
|
BOOL DrgAcceptDroppedFiles (HWND hwnd, PCSZ pszPath, PCSZ pszTypes,
|
|
ULONG ulDefaultOp, ULONG ulReserved);
|
|
BOOL DrgAccessDraginfo (PDRAGINFO pdinfo);
|
|
HSTR DrgAddStrHandle (PCSZ psz);
|
|
PDRAGINFO DrgAllocDraginfo (ULONG cDitem);
|
|
PDRAGTRANSFER DrgAllocDragtransfer (ULONG cdxfer);
|
|
BOOL DrgCancelLazyDrag (VOID);
|
|
BOOL DrgDeleteDraginfoStrHandles (PDRAGINFO pdinfo);
|
|
BOOL DrgDeleteStrHandle (HSTR hstr);
|
|
HWND DrgDrag (HWND hwndSource, PDRAGINFO pdinfo, PDRAGIMAGE pdimg,
|
|
ULONG cdimg, LONG vkTerminate, PVOID pReserved);
|
|
BOOL DrgDragFiles (HWND hwnd, PSZ *apszFiles, PSZ *apszTypes, PSZ *apszTargets,
|
|
ULONG cFiles, HPOINTER hptrDrag, ULONG vkTerm, BOOL fSourceRender,
|
|
ULONG ulReserved);
|
|
BOOL DrgFreeDraginfo (PDRAGINFO pdinfo);
|
|
BOOL DrgFreeDragtransfer (PDRAGTRANSFER pdxfer);
|
|
HPS DrgGetPS (HWND hwnd);
|
|
BOOL DrgLazyDrag (HWND hwndSource, PDRAGINFO pDraginfo, PDRAGIMAGE pdimg,
|
|
ULONG cdimg, PVOID pReserved);
|
|
BOOL DrgLazyDrop (HWND hwndTarget, ULONG ulOperation, PPOINTL pptlDrop);
|
|
BOOL DrgPostTransferMsg (HWND hwnd, ULONG msg, PDRAGTRANSFER pdxfer, ULONG fl,
|
|
ULONG ulReserved, BOOL fRetry);
|
|
BOOL DrgPushDraginfo (PDRAGINFO pdinfo, HWND hwndDest);
|
|
PDRAGINFO DrgQueryDraginfoPtr (PDRAGINFO pReserved);
|
|
PDRAGINFO DrgQueryDraginfoPtrFromHwnd (HWND hwndSource);
|
|
PDRAGINFO DrgQueryDraginfoPtrFromDragitem (__const__ DRAGITEM *pDragitem);
|
|
BOOL DrgQueryDragitem (PDRAGINFO pdinfo, ULONG cbBuffer, PDRAGITEM pditem,
|
|
ULONG iItem);
|
|
ULONG DrgQueryDragitemCount (PDRAGINFO pdinfo);
|
|
PDRAGITEM DrgQueryDragitemPtr (PDRAGINFO pdinfo, ULONG ulIndex);
|
|
ULONG DrgQueryDragStatus (VOID);
|
|
BOOL DrgQueryNativeRMF (PDRAGITEM pditem, ULONG cbBuffer, PCHAR pBuffer);
|
|
ULONG DrgQueryNativeRMFLen (PDRAGITEM pditem);
|
|
ULONG DrgQueryStrName (HSTR hstr, ULONG cbBuffer, PSZ pBuffer);
|
|
ULONG DrgQueryStrNameLen (HSTR hstr);
|
|
BOOL DrgQueryTrueType (PDRAGITEM pditem, ULONG cbBuffer, PSZ pBuffer);
|
|
ULONG DrgQueryTrueTypeLen (PDRAGITEM pditem);
|
|
PDRAGINFO DrgReallocDraginfo (PDRAGINFO pDraginfoOld, ULONG cditem);
|
|
BOOL DrgReleasePS (HPS hps);
|
|
MRESULT DrgSendTransferMsg (HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2);
|
|
BOOL DrgSetDragImage (PDRAGINFO pdinfo, PDRAGIMAGE pdimg, ULONG cdimg,
|
|
PVOID pReserved);
|
|
BOOL DrgSetDragitem (PDRAGINFO pdinfo, PDRAGITEM pditem, ULONG cbBuffer,
|
|
ULONG iItem);
|
|
BOOL DrgSetDragPointer (PDRAGINFO pdinfo, HPOINTER hptr);
|
|
BOOL DrgVerifyNativeRMF (PDRAGITEM pditem, PCSZ pszRMF);
|
|
BOOL DrgVerifyRMF (PDRAGITEM pditem, PCSZ pszMech, PCSZ pszFmt);
|
|
BOOL DrgVerifyTrueType (PDRAGITEM pditem, PCSZ pszType);
|
|
BOOL DrgVerifyType (PDRAGITEM pditem, PCSZ pszType);
|
|
BOOL DrgVerifyTypeSet (PDRAGITEM pditem, PCSZ pszType, ULONG cbMatch,
|
|
PSZ pszMatch);
|
|
|
|
#endif /* INCL_WINSTDDRAG */
|
|
|
|
/* -------------------------- VALUE SET ----------------------------------- */
|
|
|
|
#if defined (INCL_WINSTDVALSET)
|
|
|
|
#define VDA_ITEM 0x0001
|
|
#define VDA_ITEMBACKGROUND 0x0002
|
|
#define VDA_SURROUNDING 0x0003
|
|
#define VDA_BACKGROUND 0x0004
|
|
|
|
#define VIA_BITMAP 0x0001
|
|
#define VIA_ICON 0x0002
|
|
#define VIA_TEXT 0x0004
|
|
#define VIA_RGB 0x0008
|
|
#define VIA_COLORINDEX 0x0010
|
|
#define VIA_OWNERDRAW 0x0020
|
|
#define VIA_DISABLED 0x0040
|
|
#define VIA_DRAGGABLE 0x0080
|
|
#define VIA_DROPONABLE 0x0100
|
|
|
|
#define VM_QUERYITEM 0x0375
|
|
#define VM_QUERYITEMATTR 0x0376
|
|
#define VM_QUERYMETRICS 0x0377
|
|
#define VM_QUERYSELECTEDITEM 0x0378
|
|
#define VM_SELECTITEM 0x0379
|
|
#define VM_SETITEM 0x037a
|
|
#define VM_SETITEMATTR 0x037b
|
|
#define VM_SETMETRICS 0x037c
|
|
|
|
#define VMA_ITEMSIZE 0x0001
|
|
#define VMA_ITEMSPACING 0x0002
|
|
|
|
#define VN_SELECT 0x0078
|
|
#define VN_ENTER 0x0079
|
|
#define VN_DRAGLEAVE 0x007a
|
|
#define VN_DRAGOVER 0x007b
|
|
#define VN_DROP 0x007c
|
|
#define VN_DROPHELP 0x007d
|
|
#define VN_INITDRAG 0x007e
|
|
#define VN_SETFOCUS 0x007f
|
|
#define VN_KILLFOCUS 0x0080
|
|
#define VN_HELP 0x0081
|
|
|
|
#define VS_BITMAP 0x0001
|
|
#define VS_ICON 0x0002
|
|
#define VS_TEXT 0x0004
|
|
#define VS_RGB 0x0008
|
|
#define VS_COLORINDEX 0x0010
|
|
#define VS_BORDER 0x0020
|
|
#define VS_ITEMBORDER 0x0040
|
|
#define VS_SCALEBITMAPS 0x0080
|
|
#define VS_RIGHTTOLEFT 0x0100
|
|
#define VS_OWNERDRAW 0x0200
|
|
|
|
#define VSERR_INVALID_PARAMETERS (-1)
|
|
|
|
|
|
typedef struct _VSCDATA
|
|
{
|
|
ULONG cbSize;
|
|
USHORT usRowCount;
|
|
USHORT usColumnCount;
|
|
} VSCDATA;
|
|
typedef VSCDATA *PVSCDATA;
|
|
|
|
typedef struct _VSDRAGINIT
|
|
{
|
|
HWND hwnd;
|
|
LONG x;
|
|
LONG y;
|
|
LONG cx;
|
|
LONG cy;
|
|
USHORT usRow;
|
|
USHORT usColumn;
|
|
} VSDRAGINIT;
|
|
typedef VSDRAGINIT *PVSDRAGINIT;
|
|
|
|
typedef struct _VSDRAGINFO
|
|
{
|
|
PDRAGINFO pDragInfo;
|
|
USHORT usRow;
|
|
USHORT usColumn;
|
|
} VSDRAGINFO;
|
|
typedef VSDRAGINFO *PVSDRAGINFO;
|
|
|
|
typedef struct _VSTEXT
|
|
{
|
|
PSZ pszItemText;
|
|
ULONG ulBufLen;
|
|
} VSTEXT;
|
|
typedef VSTEXT *PVSTEXT;
|
|
|
|
#endif /* INCL_WINSTDVALSET */
|
|
|
|
/* ---------------------------- CONTAINER --------------------------------- */
|
|
|
|
#if defined (INCL_WINSTDCNR)
|
|
|
|
#define CA_CONTAINERTITLE 0x00000200
|
|
#define CA_TITLESEPARATOR 0x00000400
|
|
#define CA_TITLELEFT 0x00000800
|
|
#define CA_TITLERIGHT 0x00001000
|
|
#define CA_TITLECENTER 0x00002000
|
|
#define CA_OWNERDRAW 0x00004000
|
|
#define CA_DETAILSVIEWTITLES 0x00008000
|
|
#define CA_ORDEREDTARGETEMPH 0x00010000
|
|
#define CA_DRAWBITMAP 0x00020000
|
|
#define CA_DRAWICON 0x00040000
|
|
#define CA_TITLEREADONLY 0x00080000
|
|
#define CA_OWNERPAINTBACKGROUND 0x00100000
|
|
#define CA_MIXEDTARGETEMPH 0x00200000
|
|
#define CA_TREELINE 0x00400000
|
|
|
|
#define CCS_EXTENDSEL 0x0001
|
|
#define CCS_MULTIPLESEL 0x0002
|
|
#define CCS_SINGLESEL 0x0004
|
|
#define CCS_AUTOPOSITION 0x0008
|
|
#define CCS_VERIFYPOINTERS 0x0010
|
|
#define CCS_READONLY 0x0020
|
|
#define CCS_MINIRECORDCORE 0x0040
|
|
#define CCS_MINIICONS 0x0800
|
|
#define CCS_NOCONTROLPTR 0x1000
|
|
|
|
#define CFA_LEFT 0x00000001
|
|
#define CFA_RIGHT 0x00000002
|
|
#define CFA_CENTER 0x00000004
|
|
#define CFA_TOP 0x00000008
|
|
#define CFA_VCENTER 0x00000010
|
|
#define CFA_BOTTOM 0x00000020
|
|
#define CFA_INVISIBLE 0x00000040
|
|
#define CFA_BITMAPORICON 0x00000100
|
|
#define CFA_SEPARATOR 0x00000200
|
|
#define CFA_HORZSEPARATOR 0x00000400
|
|
#define CFA_STRING 0x00000800
|
|
#define CFA_OWNER 0x00001000
|
|
#define CFA_DATE 0x00002000
|
|
#define CFA_TIME 0x00004000
|
|
#define CFA_FIREADONLY 0x00008000
|
|
#define CFA_FITITLEREADONLY 0x00010000
|
|
#define CFA_ULONG 0x00020000
|
|
#define CFA_RANGE 0x00040000
|
|
#define CFA_NEWCOMP 0x00080000
|
|
#define CFA_OBJECT 0x00100000
|
|
#define CFA_LIST 0x00200000
|
|
#define CFA_CLASS 0x00400000
|
|
#define CFA_IGNORE 0x80000000
|
|
|
|
#define CID_LEFTCOLTITLEWND 0x7ff0
|
|
#define CID_RIGHTCOLTITLEWND 0x7ff1
|
|
#define CID_BLANKBOX 0x7ff2
|
|
#define CID_HSCROLL 0x7ff3
|
|
#define CID_RIGHTHSCROLL 0x7ff4
|
|
#define CID_CNRTITLEWND 0x7ff5
|
|
#define CID_LEFTDVWND 0x7ff7
|
|
#define CID_RIGHTDVWND 0x7ff8
|
|
#define CID_VSCROLL 0x7ff9
|
|
#define CID_MLE 0x7ffa
|
|
|
|
#define CM_ALLOCDETAILFIELDINFO 0x0330
|
|
#define CM_ALLOCRECORD 0x0331
|
|
#define CM_ARRANGE 0x0332
|
|
#define CM_ERASERECORD 0x0333
|
|
#define CM_FILTER 0x0334
|
|
#define CM_FREEDETAILFIELDINFO 0x0335
|
|
#define CM_FREERECORD 0x0336
|
|
#define CM_HORZSCROLLSPLITWINDOW 0x0337
|
|
#define CM_INSERTDETAILFIELDINFO 0x0338
|
|
#define CM_INSERTRECORD 0x0339
|
|
#define CM_INVALIDATEDETAILFIELDINFO 0x033a
|
|
#define CM_INVALIDATERECORD 0x033b
|
|
#define CM_PAINTBACKGROUND 0x033c
|
|
#define CM_QUERYCNRINFO 0x033d
|
|
#define CM_QUERYDETAILFIELDINFO 0x033e
|
|
#define CM_QUERYDRAGIMAGE 0x033f
|
|
#define CM_QUERYRECORD 0x0340
|
|
#define CM_QUERYRECORDEMPHASIS 0x0341
|
|
#define CM_QUERYRECORDFROMRECT 0x0342
|
|
#define CM_QUERYRECORDRECT 0x0343
|
|
#define CM_QUERYVIEWPORTRECT 0x0344
|
|
#define CM_REMOVEDETAILFIELDINFO 0x0345
|
|
#define CM_REMOVERECORD 0x0346
|
|
#define CM_SCROLLWINDOW 0x0347
|
|
#define CM_SEARCHSTRING 0x0348
|
|
#define CM_SETCNRINFO 0x0349
|
|
#define CM_SETRECORDEMPHASIS 0x034a
|
|
#define CM_SORTRECORD 0x034b
|
|
#define CM_OPENEDIT 0x034c
|
|
#define CM_CLOSEEDIT 0x034d
|
|
#define CM_COLLAPSETREE 0x034e
|
|
#define CM_EXPANDTREE 0x034f
|
|
#define CM_QUERYRECORDINFO 0x0350
|
|
#define CM_INSERTRECORDARRAY 0x0351
|
|
#define CM_MOVETREE 0x0352
|
|
#define CM_SETTEXTVISIBILITY 0x0353
|
|
#define CM_SETGRIDINFO 0x0354
|
|
#define CM_QUERYGRIDINFO 0x0355
|
|
#define CM_SNAPTOGRID 0x0356
|
|
|
|
#define CMA_TOP 0x0001
|
|
#define CMA_BOTTOM 0x0002
|
|
#define CMA_LEFT 0x0004
|
|
#define CMA_RIGHT 0x0008
|
|
#define CMA_PERIMETER 0x0010
|
|
#define CMA_USER 0x0020
|
|
|
|
#define CMA_FIRST 0x0010
|
|
#define CMA_LAST 0x0020
|
|
#define CMA_END 0x0040
|
|
#define CMA_PREV 0x0080
|
|
#define CMA_NEXT 0x0100
|
|
|
|
#define CMA_HORIZONTAL 0x0200
|
|
#define CMA_VERTICAL 0x0400
|
|
#define CMA_ICON 0x0800
|
|
#define CMA_TEXT 0x1000
|
|
#define CMA_PARTIAL 0x2000
|
|
#define CMA_COMPLETE 0x4000
|
|
|
|
#define CMA_PARENT 0x0001
|
|
#define CMA_FIRSTCHILD 0x0002
|
|
#define CMA_LASTCHILD 0x0004
|
|
|
|
#define CMA_CNRTITLE 0x0001
|
|
#define CMA_DELTA 0x0002
|
|
#define CMA_FLWINDOWATTR 0x0004
|
|
#define CMA_LINESPACING 0x0008
|
|
#define CMA_PFIELDINFOLAST 0x0010
|
|
|
|
#define CMA_PSORTRECORD 0x0020
|
|
#define CMA_PTLORIGIN 0x0040
|
|
#define CMA_SLBITMAPORICON 0x0080
|
|
#define CMA_XVERTSPLITBAR 0x0100
|
|
#define CMA_PFIELDINFOOBJECT 0x0200
|
|
|
|
#define CMA_TREEICON 0x0400
|
|
#define CMA_TREEBITMAP 0x0800
|
|
#define CMA_CXTREEINDENT 0x1000
|
|
#define CMA_CXTREELINE 0x2000
|
|
#define CMA_SLTREEBITMAPORICON 0x4000
|
|
|
|
#define CMA_ITEMORDER 0x0001
|
|
#define CMA_WINDOW 0x0002
|
|
#define CMA_WORKSPACE 0x0004
|
|
#define CMA_ZORDER 0x0008
|
|
|
|
#define CMA_DELTATOP 0x0001
|
|
#define CMA_DELTABOT 0x0002
|
|
#define CMA_DELTAHOME 0x0004
|
|
#define CMA_DELTAEND 0x0008
|
|
|
|
#define CMA_NOREPOSITION 0x0001
|
|
#define CMA_REPOSITION 0x0002
|
|
#define CMA_TEXTCHANGED 0x0004
|
|
#define CMA_ERASE 0x0008
|
|
#define CMA_NOTEXTCHANGED 0x0010
|
|
#define CMA_FILTER 0x1000
|
|
|
|
#define CMA_FREE 0x0001
|
|
#define CMA_INVALIDATE 0x0002
|
|
|
|
#define CMA_ARRANGESTANDARD 0x0000
|
|
#define CMA_ARRANGEGRID 0x0001
|
|
#define CMA_ARRANGESELECTED 0x0002
|
|
|
|
#define CMA_AVAIL 0x0001
|
|
#define CMA_UNAVAIL 0x0002
|
|
|
|
#define CN_DRAGAFTER 0x0065
|
|
#define CN_DRAGLEAVE 0x0066
|
|
#define CN_DRAGOVER 0x0067
|
|
#define CN_DROP 0x0068
|
|
#define CN_DROPHELP 0x0069
|
|
#define CN_ENTER 0x006a
|
|
#define CN_INITDRAG 0x006b
|
|
#define CN_EMPHASIS 0x006c
|
|
#define CN_KILLFOCUS 0x006d
|
|
#define CN_SCROLL 0x006e
|
|
#define CN_QUERYDELTA 0x006f
|
|
#define CN_SETFOCUS 0x0070
|
|
#define CN_REALLOCPSZ 0x0071
|
|
#define CN_BEGINEDIT 0x0072
|
|
#define CN_ENDEDIT 0x0073
|
|
#define CN_COLLAPSETREE 0x0074
|
|
#define CN_EXPANDTREE 0x0075
|
|
#define CN_HELP 0x0076
|
|
#define CN_CONTEXTMENU 0x0077
|
|
#define CN_VERIFYEDIT 0x0086
|
|
#define CN_PICKUP 0x0087
|
|
#define CN_DROPNOTIFY 0x0088
|
|
#define CN_GRIDRESIZED 0x0089
|
|
|
|
#define CRA_SELECTED 0x00000001
|
|
#define CRA_TARGET 0x00000002
|
|
#define CRA_CURSORED 0x00000004
|
|
#define CRA_INUSE 0x00000008
|
|
#define CRA_FILTERED 0x00000010
|
|
#define CRA_DROPONABLE 0x00000020
|
|
#define CRA_RECORDREADONLY 0x00000040
|
|
#define CRA_EXPANDED 0x00000080
|
|
#define CRA_COLLAPSED 0x00000100
|
|
#define CRA_PICKED 0x00000200
|
|
#define CRA_LOCKED 0x00000400
|
|
#define CRA_DISABLED 0x00001000
|
|
#define CRA_SOURCE 0x00004000
|
|
#define CRA_IGNORE 0x00008000
|
|
#define CRA_OWNERFREE 0x00010000
|
|
#define CRA_OWNERDRAW 0x00020000
|
|
|
|
#define CV_TEXT 0x00000001
|
|
#define CV_NAME 0x00000002
|
|
#define CV_ICON 0x00000004
|
|
#define CV_DETAIL 0x00000008
|
|
#define CV_FLOW 0x00000010
|
|
#define CV_MINI 0x00000020
|
|
#define CV_TREE 0x00000040
|
|
#define CV_GRID 0x00000080
|
|
#define CV_EXACTLENGTH 0x10000000
|
|
|
|
#define PMERR_NOFILTERED_ITEMS 0x1f02
|
|
#define PMERR_COMPARISON_FAILED 0x1f03
|
|
#define PMERR_RECORD_CURRENTLY_INSERTED 0x1f04
|
|
#define PMERR_FI_CURRENTLY_INSERTED 0x1f05
|
|
|
|
|
|
typedef struct _TREEITEMDESC
|
|
{
|
|
HBITMAP hbmExpanded;
|
|
HBITMAP hbmCollapsed;
|
|
HPOINTER hptrExpanded;
|
|
HPOINTER hptrCollapsed;
|
|
} TREEITEMDESC;
|
|
typedef TREEITEMDESC *PTREEITEMDESC;
|
|
|
|
typedef struct _FIELDINFO
|
|
{
|
|
ULONG cb;
|
|
ULONG flData;
|
|
ULONG flTitle;
|
|
PVOID pTitleData;
|
|
ULONG offStruct;
|
|
PVOID pUserData;
|
|
struct _FIELDINFO *pNextFieldInfo;
|
|
ULONG cxWidth;
|
|
} FIELDINFO;
|
|
typedef FIELDINFO *PFIELDINFO;
|
|
|
|
typedef struct _RECORDCORE
|
|
{
|
|
ULONG cb;
|
|
ULONG flRecordAttr;
|
|
POINTL ptlIcon;
|
|
struct _RECORDCORE *preccNextRecord;
|
|
PSZ pszIcon;
|
|
HPOINTER hptrIcon;
|
|
HPOINTER hptrMiniIcon;
|
|
HBITMAP hbmBitmap;
|
|
HBITMAP hbmMiniBitmap;
|
|
PTREEITEMDESC pTreeItemDesc;
|
|
PSZ pszText;
|
|
PSZ pszName;
|
|
PSZ pszTree;
|
|
} RECORDCORE;
|
|
typedef RECORDCORE *PRECORDCORE;
|
|
|
|
typedef struct _MINIRECORDCORE
|
|
{
|
|
ULONG cb;
|
|
ULONG flRecordAttr;
|
|
POINTL ptlIcon;
|
|
struct _MINIRECORDCORE *preccNextRecord;
|
|
PSZ pszIcon;
|
|
HPOINTER hptrIcon;
|
|
} MINIRECORDCORE;
|
|
typedef MINIRECORDCORE *PMINIRECORDCORE;
|
|
|
|
typedef struct _TREEMOVE
|
|
{
|
|
PRECORDCORE preccMove;
|
|
PRECORDCORE preccNewParent;
|
|
PRECORDCORE pRecordOrder;
|
|
BOOL flMoveSiblings;
|
|
} TREEMOVE;
|
|
typedef TREEMOVE *PTREEMOVE;
|
|
|
|
typedef struct _CNRINFO
|
|
{
|
|
ULONG cb;
|
|
PVOID pSortRecord;
|
|
PFIELDINFO pFieldInfoLast;
|
|
PFIELDINFO pFieldInfoObject;
|
|
PSZ pszCnrTitle;
|
|
ULONG flWindowAttr;
|
|
POINTL ptlOrigin;
|
|
ULONG cDelta;
|
|
ULONG cRecords;
|
|
SIZEL slBitmapOrIcon;
|
|
SIZEL slTreeBitmapOrIcon;
|
|
HBITMAP hbmExpanded;
|
|
HBITMAP hbmCollapsed;
|
|
HPOINTER hptrExpanded;
|
|
HPOINTER hptrCollapsed;
|
|
LONG cyLineSpacing;
|
|
LONG cxTreeIndent;
|
|
LONG cxTreeLine;
|
|
ULONG cFields;
|
|
LONG xVertSplitbar;
|
|
} CNRINFO;
|
|
typedef CNRINFO *PCNRINFO;
|
|
|
|
typedef struct _GRIDSQUARE
|
|
{
|
|
ULONG ulNumber;
|
|
ULONG ulState;
|
|
RECTL rctlSquare;
|
|
} GRIDSQUARE;
|
|
typedef GRIDSQUARE *PGRIDSQUARE;
|
|
|
|
typedef struct _GRIDINFO
|
|
{
|
|
ULONG cb;
|
|
SHORT cxGrid;
|
|
SHORT cyGrid;
|
|
SHORT sGridRows;
|
|
SHORT sGridCols;
|
|
LONG cGridSquares;
|
|
PGRIDSQUARE pGrid;
|
|
} GRIDINFO;
|
|
typedef GRIDINFO *PGRIDINFO;
|
|
|
|
typedef struct _CDATE
|
|
{
|
|
UCHAR day;
|
|
UCHAR month;
|
|
USHORT year;
|
|
} CDATE;
|
|
typedef CDATE *PCDATE;
|
|
|
|
typedef struct _CTIME
|
|
{
|
|
UCHAR hours;
|
|
UCHAR minutes;
|
|
UCHAR seconds;
|
|
UCHAR ucReserved;
|
|
} CTIME;
|
|
typedef CTIME *PCTIME;
|
|
|
|
typedef struct _CNRDRAGINIT
|
|
{
|
|
HWND hwndCnr;
|
|
PRECORDCORE pRecord;
|
|
LONG x;
|
|
LONG y;
|
|
LONG cx;
|
|
LONG cy;
|
|
} CNRDRAGINIT;
|
|
typedef CNRDRAGINIT *PCNRDRAGINIT;
|
|
|
|
typedef struct _FIELDINFOINSERT
|
|
{
|
|
ULONG cb;
|
|
PFIELDINFO pFieldInfoOrder;
|
|
ULONG fInvalidateFieldInfo;
|
|
ULONG cFieldInfoInsert;
|
|
} FIELDINFOINSERT;
|
|
typedef FIELDINFOINSERT *PFIELDINFOINSERT;
|
|
|
|
typedef struct _RECORDINSERT
|
|
{
|
|
ULONG cb;
|
|
PRECORDCORE pRecordOrder;
|
|
PRECORDCORE pRecordParent;
|
|
ULONG fInvalidateRecord;
|
|
ULONG zOrder;
|
|
ULONG cRecordsInsert;
|
|
} RECORDINSERT;
|
|
typedef RECORDINSERT *PRECORDINSERT;
|
|
|
|
typedef struct _QUERYRECFROMRECT
|
|
{
|
|
ULONG cb;
|
|
RECTL rect;
|
|
ULONG fsSearch;
|
|
} QUERYRECFROMRECT;
|
|
typedef QUERYRECFROMRECT *PQUERYRECFROMRECT;
|
|
|
|
typedef struct _QUERYRECORDRECT
|
|
{
|
|
ULONG cb;
|
|
PRECORDCORE pRecord;
|
|
ULONG fRightSplitWindow;
|
|
ULONG fsExtent;
|
|
} QUERYRECORDRECT;
|
|
typedef QUERYRECORDRECT *PQUERYRECORDRECT;
|
|
|
|
typedef struct _SEARCHSTRING
|
|
{
|
|
ULONG cb;
|
|
PSZ pszSearch;
|
|
ULONG fsPrefix;
|
|
ULONG fsCaseSensitive;
|
|
ULONG usView;
|
|
} SEARCHSTRING;
|
|
typedef SEARCHSTRING *PSEARCHSTRING;
|
|
|
|
typedef struct _CNRDRAGINFO
|
|
{
|
|
PDRAGINFO pDragInfo;
|
|
PRECORDCORE pRecord;
|
|
} CNRDRAGINFO;
|
|
typedef CNRDRAGINFO *PCNRDRAGINFO;
|
|
|
|
typedef struct _CNRLAZYDRAGINFO
|
|
{
|
|
PDRAGINFO pDragInfo;
|
|
PRECORDCORE pRecord;
|
|
HWND hwndTarget;
|
|
} CNRLAZYDRAGINFO;
|
|
typedef CNRLAZYDRAGINFO *PCNRLAZYDRAGINFO;
|
|
|
|
typedef struct _NOTIFYRECORDEMPHASIS
|
|
{
|
|
HWND hwndCnr;
|
|
PRECORDCORE pRecord;
|
|
ULONG fEmphasisMask;
|
|
} NOTIFYRECORDEMPHASIS;
|
|
typedef NOTIFYRECORDEMPHASIS *PNOTIFYRECORDEMPHASIS;
|
|
|
|
typedef struct _NOTIFYRECORDENTER
|
|
{
|
|
HWND hwndCnr;
|
|
ULONG fKey;
|
|
PRECORDCORE pRecord;
|
|
} NOTIFYRECORDENTER;
|
|
typedef NOTIFYRECORDENTER *PNOTIFYRECORDENTER;
|
|
|
|
typedef struct _NOTIFYDELTA
|
|
{
|
|
HWND hwndCnr;
|
|
ULONG fDelta;
|
|
} NOTIFYDELTA;
|
|
typedef NOTIFYDELTA *PNOTIFYDELTA;
|
|
|
|
typedef struct _NOTIFYSCROLL
|
|
{
|
|
HWND hwndCnr;
|
|
LONG lScrollInc;
|
|
ULONG fScroll;
|
|
} NOTIFYSCROLL;
|
|
typedef NOTIFYSCROLL *PNOTIFYSCROLL;
|
|
|
|
typedef struct _CNREDITDATA
|
|
{
|
|
ULONG cb;
|
|
HWND hwndCnr;
|
|
PRECORDCORE pRecord;
|
|
PFIELDINFO pFieldInfo;
|
|
PSZ *ppszText;
|
|
ULONG cbText;
|
|
ULONG id;
|
|
} CNREDITDATA;
|
|
typedef CNREDITDATA *PCNREDITDATA;
|
|
|
|
typedef struct _OWNERBACKGROUND
|
|
{
|
|
HWND hwnd;
|
|
HPS hps;
|
|
RECTL rclBackground;
|
|
LONG idWindow;
|
|
} OWNERBACKGROUND;
|
|
typedef OWNERBACKGROUND *POWNERBACKGROUND;
|
|
|
|
typedef struct _CNRDRAWITEMINFO
|
|
{
|
|
PRECORDCORE pRecord;
|
|
PFIELDINFO pFieldInfo;
|
|
} CNRDRAWITEMINFO;
|
|
typedef CNRDRAWITEMINFO *PCNRDRAWITEMINFO;
|
|
|
|
#endif /* INCL_WINSTDCNR */
|
|
|
|
/* ------------------------- WORKPLACE SHELL ------------------------------ */
|
|
|
|
#if defined (INCL_WPCLASS) || !defined (INCL_NOCOMMON)
|
|
|
|
#define CCHMAXCLASS 3
|
|
|
|
#define QC_First 0
|
|
#define QC_Next 1
|
|
#define QC_Last 2
|
|
#define QC_FIRST QC_First
|
|
#define QC_NEXT QC_Next
|
|
#define QC_LAST QC_Last
|
|
|
|
#define CO_FAILIFEXISTS 0
|
|
#define CO_REPLACEIFEXISTS 1
|
|
#define CO_UPDATEIFEXISTS 2
|
|
|
|
#if !defined (LOCATION_DESKTOP)
|
|
#define LOCATION_DESKTOP ((PSZ)0xffff0001)
|
|
#endif
|
|
|
|
typedef struct _OBJCLASS
|
|
{
|
|
struct _OBJCLASS *pNext;
|
|
PSZ pszClassName;
|
|
PSZ pszModName;
|
|
} OBJCLASS;
|
|
typedef OBJCLASS *POBJCLASS;
|
|
|
|
HOBJECT WinCopyObject (HOBJECT hObjectofObject, HOBJECT hObjectofDest,
|
|
ULONG ulReserved);
|
|
HOBJECT WinCreateObject (PCSZ pszClassName, PCSZ pszTitle, PCSZ pszSetupString,
|
|
PCSZ pszLocation, ULONG ulFlags);
|
|
HOBJECT WinCreateShadow (HOBJECT hObjectofObject, HOBJECT hObjectofDest,
|
|
ULONG ulReserved);
|
|
BOOL WinDeregisterObjectClass (PCSZ pszClassName);
|
|
BOOL WinDestroyObject (HOBJECT hObject);
|
|
BOOL WinEnumObjectClasses (POBJCLASS pObjClass, PULONG pulSize);
|
|
BOOL WinIsSOMDDReady (VOID);
|
|
BOOL WinIsWPDServerReady (VOID);
|
|
HOBJECT WinMoveObject (HOBJECT hObjectofObject, HOBJECT hObjectofDest,
|
|
ULONG ulReserved);
|
|
BOOL WinOpenObject (HOBJECT hObject, ULONG ulView, BOOL fFlag);
|
|
BOOL WinQueryActiveDesktopPathname (PSZ pszPathName, ULONG ulSize);
|
|
HOBJECT WinQueryObject (PCSZ pszObjectID);
|
|
BOOL WinQueryObjectPath (HOBJECT hobject, PSZ pszPathName, ULONG ulSize);
|
|
BOOL WinRegisterObjectClass (PCSZ pszClassName, PCSZ pszModName);
|
|
BOOL WinReplaceObjectClass (PCSZ pszOldClassName, PCSZ pszNewClassName,
|
|
BOOL fReplace);
|
|
ULONG WinRestartSOMDD (BOOL fState);
|
|
ULONG WinRestartWPDServer (BOOL fState);
|
|
BOOL WinSaveObject (HOBJECT hObject, BOOL fAsync);
|
|
BOOL WinSetObjectData (HOBJECT hObject, PCSZ pszSetupString);
|
|
|
|
#endif /* INCL_WPCLASS || !INCL_NOCOMMON */
|
|
|
|
#if !defined (INCL_NOCOMMON)
|
|
|
|
BOOL WinFreeFileIcon (HPOINTER hptr);
|
|
HPOINTER WinLoadFileIcon (PCSZ pszFileName, BOOL fPrivate);
|
|
BOOL WinRestoreWindowPos (PCSZ pszAppName, PCSZ pszKeyName, HWND hwnd);
|
|
#if defined (INCL_WINPOINTERS)
|
|
BOOL WinSetFileIcon (PCSZ pszFileName, __const__ ICONINFO *pIconInfo);
|
|
#endif
|
|
BOOL WinShutdownSystem (HAB hab, HMQ hmq);
|
|
BOOL WinStoreWindowPos (PCSZ pszAppName, PCSZ pszKeyName, HWND hwnd);
|
|
|
|
#endif /* !INCL_NOCOMMON */
|
|
|
|
/* ---------------------------- SPOOLER ----------------------------------- */
|
|
|
|
#if defined (INCL_SPL)
|
|
|
|
#define SPL_ERROR 0
|
|
#define SPL_OK 1
|
|
|
|
#define SPL_INI_SPOOLER "PM_SPOOLER"
|
|
#define SPL_INI_QUEUE "PM_SPOOLER_QUEUE"
|
|
#define SPL_INI_PRINTER "PM_SPOOLER_PRINTER"
|
|
#define SPL_INI_PRINTERDESCR "PM_SPOOLER_PRINTER_DESCR"
|
|
#define SPL_INI_QUEUEDESCR "PM_SPOOLER_QUEUE_DESCR"
|
|
#define SPL_INI_QUEUEDD "PM_SPOOLER_QUEUE_DD"
|
|
#define SPL_INI_QUEUEDDDATA "PM_SPOOLER_QUEUE_DDDATA"
|
|
|
|
#define SPLC_ABORT 1
|
|
#define SPLC_PAUSE 2
|
|
#define SPLC_CONTINUE 3
|
|
|
|
#define SPLDATA_PRINTERJAM 0x0001
|
|
#define SPLDATA_FORMCHGREQD 0x0002
|
|
#define SPLDATA_CARTCHGREQD 0x0004
|
|
#define SPLDATA_PENCHGREQD 0x0008
|
|
#define SPLDATA_DATAERROR 0x0010
|
|
#define SPLDATA_UNEXPECTERROR 0x0020
|
|
#define SPLDATA_OTHER 0x8000
|
|
|
|
#define SPLINFO_QPERROR 0x0001
|
|
#define SPLINFO_DDERROR 0x0002
|
|
#define SPLINFO_SPLERROR 0x0004
|
|
#define SPLINFO_OTHERERROR 0x0080
|
|
#define SPLINFO_INFORMATION 0x0100
|
|
#define SPLINFO_WARNING 0x0200
|
|
#define SPLINFO_ERROR 0x0400
|
|
#define SPLINFO_SEVERE 0x0800
|
|
#define SPLINFO_USERINTREQD 0x1000
|
|
|
|
#define SPLPORT_VERSION_REGULAR 0
|
|
#define SPLPORT_VERSION_VIRTUAL 1
|
|
|
|
#define SSQL_ERROR (-1)
|
|
|
|
#define QP_RAWDATA_BYPASS 0x0001
|
|
#define QP_PRINT_SEPARATOR_PAGE 0x0002
|
|
|
|
#define QPDAT_ADDRESS 0
|
|
#define QPDAT_DRIVER_NAME 1
|
|
#define QPDAT_DRIVER_DATA 2
|
|
#define QPDAT_DATA_TYPE 3
|
|
#define QPDAT_COMMENT 4
|
|
#define QPDAT_PROC_PARAMS 5
|
|
#define QPDAT_SPL_PARAMS 6
|
|
#define QPDAT_NET_PARAMS 7
|
|
#define QPDAT_DOC_NAME 8
|
|
#define QPDAT_QUEUE_NAME 9
|
|
#define QPDAT_TOKEN 10
|
|
#define QPDAT_JOBID 11
|
|
|
|
typedef LHANDLE HSPL;
|
|
typedef LHANDLE HSTD;
|
|
typedef HSTD *PHSTD;
|
|
typedef PSZ *PQMOPENDATA;
|
|
typedef unsigned long SPLERR;
|
|
|
|
typedef struct _SQPOPENDATA
|
|
{
|
|
PSZ pszLogAddress;
|
|
PSZ pszDriverName;
|
|
PDRIVDATA pdriv;
|
|
PSZ pszDataType;
|
|
PSZ pszComment;
|
|
PSZ pszProcParams;
|
|
PSZ pszSpoolParams;
|
|
PSZ pszNetworkParams;
|
|
PSZ pszDocName;
|
|
PSZ pszQueueName;
|
|
PSZ pszToken;
|
|
USHORT idJobId;
|
|
} SQPOPENDATA;
|
|
typedef SQPOPENDATA *PSQPOPENDATA;
|
|
|
|
|
|
BOOL SplStdClose (HDC hdc);
|
|
BOOL SplStdDelete (HSTD hMetaFile);
|
|
BOOL SplStdGetBits (HSTD hMetaFile, LONG offData, LONG cbData, PCH pchData);
|
|
BOOL SplStdOpen (HDC hdc);
|
|
LONG SplStdQueryLength (HSTD hMetaFile);
|
|
BOOL SplStdStart (HDC hdc);
|
|
HSTD SplStdStop (HDC hdc);
|
|
|
|
SPLERR SplControlDevice (PSZ pszComputerName, PSZ pszPortName,
|
|
ULONG ulControl);
|
|
SPLERR SplCopyJob (PCSZ pszSrcComputerName, PCSZ pszSrcQueueName,
|
|
ULONG ulSrcJob, PCSZ pszTrgComputerName, PCSZ pszTrgQueueName,
|
|
PULONG pulTrgJob);
|
|
SPLERR SplCreateDevice (PSZ pszComputerName, ULONG ulLevel, PVOID pBuf,
|
|
ULONG cbBuf);
|
|
SPLERR SplCreatePort (PCSZ pszComputerName, PCSZ pszPortName,
|
|
PCSZ pszPortDriver, ULONG ulVersion, PVOID pBuf, ULONG cbBuf);
|
|
SPLERR SplCreateQueue (PSZ pszComputerName, ULONG ulLevel, PVOID pBuf,
|
|
ULONG cbBuf);
|
|
SPLERR SplDeleteDevice (PSZ pszComputerName, PSZ pszPrintDeviceName);
|
|
SPLERR SplDeleteJob (PSZ pszComputerName, PSZ pszQueueName, ULONG ulJob);
|
|
SPLERR SplDeletePort (PCSZ pszComputerName, PCSZ pszPortName);
|
|
SPLERR SplDeleteQueue (PSZ pszComputerName, PSZ pszQueueName);
|
|
SPLERR SplEnumDevice (PSZ pszComputerName, ULONG ulLevel, PVOID pBuf,
|
|
ULONG cbBuf, PULONG pcReturned, PULONG pcTotal, PULONG pcbNeeded,
|
|
PVOID pReserved);
|
|
SPLERR SplEnumDriver (PSZ pszComputerName, ULONG ulLevel, PVOID pBuf,
|
|
ULONG cbBuf, PULONG pcReturned, PULONG pcTotal, PULONG pcbNeeded,
|
|
PVOID pReserved);
|
|
SPLERR SplEnumJob (PSZ pszComputerName, PSZ pszQueueName, ULONG ulLevel,
|
|
PVOID pBuf, ULONG cbBuf, PULONG pcReturned, PULONG pcTotal,
|
|
PULONG pcbNeeded, PVOID pReserved);
|
|
SPLERR SplEnumPort (PCSZ pszComputerName, ULONG ulLevel, PVOID pBuf,
|
|
ULONG cbBuf, PULONG pcReturned, PULONG pcTotal, PULONG pcbNeeded,
|
|
PVOID pReserved);
|
|
SPLERR SplEnumPrinter (PSZ pszComputerName, ULONG uLevel, ULONG flType,
|
|
PVOID pBuf, ULONG cbbuf, PULONG pcReturned, PULONG pcTotal,
|
|
PULONG pcbNeeded, PVOID pReserved);
|
|
SPLERR SplEnumQueue (PSZ pszComputerName, ULONG ulLevel, PVOID pBuf,
|
|
ULONG cbBuf, PULONG pcReturned, PULONG pcTotal, PULONG pcbNeeded,
|
|
PVOID pReserved);
|
|
SPLERR SplEnumQueueProcessor (PSZ pszComputerName, ULONG ulLevel, PVOID pBuf,
|
|
ULONG cbBuf, PULONG pcReturned, PULONG pcTotal, PULONG pcbNeeded,
|
|
PVOID pReserved);
|
|
SPLERR SplHoldJob (PCSZ pszComputerName, PCSZ pszQueueName, ULONG ulJob);
|
|
SPLERR SplHoldQueue (PSZ pszComputerName, PSZ pszQueueName);
|
|
SPLERR SplPurgeQueue (PSZ pszComputerName, PSZ pszQueueName);
|
|
SPLERR SplQueryDevice (PSZ pszComputerName, PSZ pszPrintDeviceName,
|
|
ULONG ulLevel, PVOID pBuf, ULONG cbBuf, PULONG pcbNeeded);
|
|
SPLERR SplQueryDriver (PCSZ pszComputerName, PCSZ pszDriverName,
|
|
PCSZ pszPrinterName, ULONG ulLevel, PVOID pBuf, ULONG cbBuf,
|
|
PULONG pcbNeeded);
|
|
SPLERR SplQueryJob (PSZ pszComputerName, PSZ pszQueueName, ULONG ulJob,
|
|
ULONG ulLevel, PVOID pBuf, ULONG cbBuf, PULONG pcbNeeded);
|
|
SPLERR SplQueryPort (PCSZ pszComputerName, PCSZ pszPortName, ULONG ulLevel,
|
|
PVOID pBuf, ULONG cbBuf, PULONG pcbNeeded);
|
|
SPLERR SplQueryQueue (PSZ pszComputerName, PSZ pszQueueName, ULONG ulLevel,
|
|
PVOID pBuf, ULONG cbBuf, PULONG pcbNeeded);
|
|
SPLERR SplReleaseJob (PCSZ pszComputerName, PCSZ pszQueueName, ULONG ulJob);
|
|
SPLERR SplReleaseQueue (PSZ pszComputerName, PSZ pszQueueName);
|
|
SPLERR SplSetDevice (PSZ pszComputerName, PSZ pszPrintDeviceName,
|
|
ULONG ulLevel, PVOID pBuf, ULONG cbBuf, ULONG ulParmNum);
|
|
SPLERR SplSetDriver (PCSZ pszComputerName, PCSZ pszDriverName,
|
|
PCSZ pszPrinterName, ULONG ulLevel, PVOID pBuf, ULONG cbBuf,
|
|
ULONG ulParmNum);
|
|
SPLERR SplSetJob (PSZ pszComputerName, PSZ pszQueueName, ULONG ulJob,
|
|
ULONG ulLevel, PVOID pBuf, ULONG cbBuf, ULONG ulParmNum);
|
|
SPLERR SplSetPort (PCSZ pszComputerName, PCSZ pszPortName, ULONG ulLevel,
|
|
PVOID pBuf, ULONG cbBuf, ULONG ulParmNum);
|
|
SPLERR SplSetQueue (PSZ pszComputerName, PSZ pszQueueName, ULONG ulLevel,
|
|
PVOID pBuf, ULONG cbBuf, ULONG ulParmNum);
|
|
|
|
ULONG SplMessageBox (PSZ pszLogAddr, ULONG fErrInfo, ULONG fErrData,
|
|
PSZ pszText, PSZ pszCaption, ULONG idWindow, ULONG fStyle);
|
|
BOOL SplQmAbort (HSPL hspl);
|
|
BOOL SplQmAbortDoc (HSPL hspl);
|
|
BOOL SplQmClose (HSPL hspl);
|
|
BOOL SplQmEndDoc (HSPL hspl);
|
|
ULONG SplQmGetJobID (HSPL hspl, ULONG ulLevel, PVOID pBuf, ULONG cbBuf,
|
|
PULONG pcbNeeded);
|
|
BOOL SplQmNewPage (HSPL hspl, ULONG ulPageNumber);
|
|
HSPL SplQmOpen (PSZ pszToken, LONG lCount, PQMOPENDATA pqmdopData);
|
|
BOOL SplQmStartDoc (HSPL hspl, PSZ pszDocName);
|
|
BOOL SplQmWrite (HSPL hspl, LONG lCount, PVOID pData);
|
|
|
|
#if defined (INCL_SPLDOSPRINT)
|
|
|
|
#define CNLEN 15
|
|
#define DTLEN 9
|
|
#define PDLEN 8
|
|
#define QNLEN 12
|
|
#define UNLEN 20
|
|
|
|
#define DRIV_DEVICENAME_SIZE 31
|
|
#define DRIV_NAME_SIZE 8
|
|
#define FORMNAME_SIZE 31
|
|
#define MAXCOMMENTSZ 48
|
|
#define PRINTERNAME_SIZE 32
|
|
#define QP_DATATYPE_SIZE 15
|
|
|
|
#define PRD_STATUS_MASK 0x0003
|
|
#define PRD_DEVSTATUS 0x0ffc
|
|
|
|
#define PRD_ACTIVE 0
|
|
#define PRD_PAUSED 1
|
|
|
|
#define PRD_DELETE 0
|
|
#define PRD_PAUSE 1
|
|
#define PRD_CONT 2
|
|
#define PRD_RESTART 3
|
|
|
|
#define PRD_LOGADDR_PARMNUM 3
|
|
#define PRD_COMMENT_PARMNUM 7
|
|
#define PRD_DRIVERS_PARMNUM 8
|
|
#define PRD_TIMEOUT_PARMNUM 10
|
|
|
|
#define PRJ_NOTIFYNAME_PARMNUM 3
|
|
#define PRJ_DATATYPE_PARMNUM 4
|
|
#define PRJ_PARMS_PARMNUM 5
|
|
#define PRJ_POSITION_PARMNUM 6
|
|
#define PRJ_JOBFILEINUSE_PARMNUM 7
|
|
#define PRJ_COMMENT_PARMNUM 11
|
|
#define PRJ_DOCUMENT_PARMNUM 12
|
|
#define PRJ_STATUSCOMMENT_PARMNUM 13
|
|
#define PRJ_PRIORITY_PARMNUM 14
|
|
#define PRJ_PROCPARMS_PARMNUM 16
|
|
#define PRJ_DRIVERDATA_PARMNUM 18
|
|
#define PRJ_SPOOLFILENAME_PARMNUM 19
|
|
#define PRJ_PAGESSPOOLED_PARMNUM 20
|
|
#define PRJ_PAGESSENT_PARMNUM 21
|
|
#define PRJ_PAGESPRINTED_PARMNUM 22
|
|
#define PRJ_TIMEPRINTED_PARMNUM 23
|
|
#define PRJ_EXTENDSTATUS_PARMNUM 24
|
|
#define PRJ_STARTPAGE_PARMNUM 25
|
|
#define PRJ_ENDPAGE_PARMNUM 26
|
|
#define PRJ_MAXPARMNUM 26
|
|
|
|
#define PRJ_QSTATUS 0x0003
|
|
#define PRJ_DEVSTATUS 0x0ffc
|
|
|
|
#define PRJ_COMPLETE 0x0004
|
|
#define PRJ_INTERV 0x0008
|
|
#define PRJ_ERROR 0x0010
|
|
#define PRJ_DESTOFFLINE 0x0020
|
|
#define PRJ_DESTPAUSED 0x0040
|
|
#define PRJ_NOTIFY 0x0080
|
|
#define PRJ_DESTNOPAPER 0x0100
|
|
#define PRJ_DESTFORMCHG 0x0200
|
|
#define PRJ_DESTCRTCHG 0x0400
|
|
#define PRJ_DESTPENCHG 0x0800
|
|
#define PRJ_JOBFILEINUSE 0x4000
|
|
#define PRJ_DELETED 0x8000
|
|
|
|
#define PRJ_QS_QUEUED 0
|
|
#define PRJ_QS_PAUSED 1
|
|
#define PRJ_QS_SPOOLING 2
|
|
#define PRJ_QS_PRINTING 3
|
|
|
|
#define PRJ_MAX_PRIORITY 99
|
|
#define PRJ_MIN_PRIORITY 1
|
|
#define PRJ_NO_PRIORITY 0
|
|
|
|
#define PRJ4_INPRINTER 0x0001
|
|
#define PRJ4_STACKED 0x0002
|
|
#define PRJ4_HELDINPRINTER 0x0004
|
|
#define PRJ4_JOBSTARTED 0x0008
|
|
|
|
#define PRPO_PORT_DRIVER 1
|
|
#define PRPO_PROTOCOL_CNV 2
|
|
#define PRPO_MODE 3
|
|
#define PRPO_PRIORITY 4
|
|
|
|
#define PRPORT_AUTODETECT 1
|
|
#define PRPORT_DISABLE_BIDI 2
|
|
#define PRPORT_ENABLE_BIDI 3
|
|
|
|
#define PRQ_PRIORITY_PARMNUM 2
|
|
#define PRQ_STARTTIME_PARMNUM 3
|
|
#define PRQ_UNTILTIME_PARMNUM 4
|
|
#define PRQ_SEPARATOR_PARMNUM 5
|
|
#define PRQ_PROCESSOR_PARMNUM 6
|
|
#define PRQ_DESTINATIONS_PARMNUM 7
|
|
#define PRQ_PARMS_PARMNUM 8
|
|
#define PRQ_COMMENT_PARMNUM 9
|
|
#define PRQ_TYPE_PARMNUM 10
|
|
#define PRQ_PRINTERS_PARMNUM 12
|
|
#define PRQ_DRIVERNAME_PARMNUM 13
|
|
#define PRQ_DRIVERDATA_PARMNUM 14
|
|
#define PRQ_REMOTE_COMPUTER_PARMNUM 15
|
|
#define PRQ_REMOTE_QUEUE_PARMNUM 16
|
|
#define PRQ_MAXPARMNUM 16
|
|
|
|
#define PRQ_MAX_PRIORITY 1
|
|
#define PRQ_DEF_PRIORITY 5
|
|
#define PRQ_MIN_PRIORITY 9
|
|
#define PRQ_NO_PRIORITY 0
|
|
|
|
#define PRQ_STATUS_MASK 3
|
|
#define PRQ_ACTIVE 0
|
|
#define PRQ_PAUSED 1
|
|
#define PRQ_ERROR 2
|
|
#define PRQ_PENDING 3
|
|
|
|
#define PRQ3_PAUSED 0x0001
|
|
#define PRQ3_PENDING 0x0002
|
|
|
|
#define PRQ3_TYPE_RAW 0x0001
|
|
#define PRQ3_TYPE_BYPASS 0x0002
|
|
#define PRQ3_TYPE_APPDEFAULT 0x0004
|
|
|
|
#define SPL_PR_QUEUE 0x0001
|
|
#define SPL_PR_DIRECT_DEVICE 0x0002
|
|
#define SPL_PR_QUEUED_DEVICE 0x0004
|
|
#define SPL_PR_LOCAL_ONLY 0x0100
|
|
|
|
typedef struct _DRIVPROPS
|
|
{
|
|
PSZ pszKeyName;
|
|
ULONG cbBuf;
|
|
PVOID pBuf;
|
|
} DRIVPROPS;
|
|
typedef DRIVPROPS *PDRIVPROPS;
|
|
|
|
typedef struct _PRINTERINFO
|
|
{
|
|
ULONG flType;
|
|
PSZ pszComputerName;
|
|
PSZ pszPrintDestinationName;
|
|
PSZ pszDescription;
|
|
PSZ pszLocalName;
|
|
} PRINTERINFO;
|
|
typedef PRINTERINFO *PPRINTERINFO;
|
|
|
|
typedef struct _PRJINFO
|
|
{
|
|
USHORT uJobId;
|
|
CHAR szUserName[UNLEN+1];
|
|
CHAR pad_1;
|
|
CHAR szNotifyName[CNLEN+1];
|
|
CHAR szDataType[DTLEN+1];
|
|
PSZ pszParms;
|
|
USHORT uPosition;
|
|
USHORT fsStatus;
|
|
PSZ pszStatus;
|
|
ULONG ulSubmitted;
|
|
ULONG ulSize;
|
|
PSZ pszComment;
|
|
} PRJINFO;
|
|
typedef PRJINFO *PPRJINFO;
|
|
|
|
typedef struct _PRJINFO2
|
|
{
|
|
USHORT uJobId;
|
|
USHORT uPriority;
|
|
PSZ pszUserName;
|
|
USHORT uPosition;
|
|
USHORT fsStatus;
|
|
ULONG ulSubmitted;
|
|
ULONG ulSize;
|
|
PSZ pszComment;
|
|
PSZ pszDocument;
|
|
} PRJINFO2;
|
|
typedef PRJINFO2 *PPRJINFO2;
|
|
|
|
typedef struct _PRJINFO3
|
|
{
|
|
USHORT uJobId;
|
|
USHORT uPriority;
|
|
PSZ pszUserName;
|
|
USHORT uPosition;
|
|
USHORT fsStatus;
|
|
ULONG ulSubmitted;
|
|
ULONG ulSize;
|
|
PSZ pszComment;
|
|
PSZ pszDocument;
|
|
PSZ pszNotifyName;
|
|
PSZ pszDataType;
|
|
PSZ pszParms;
|
|
PSZ pszStatus;
|
|
PSZ pszQueue;
|
|
PSZ pszQProcName;
|
|
PSZ pszQProcParms;
|
|
PSZ pszDriverName;
|
|
PDRIVDATA pDriverData;
|
|
PSZ pszPrinterName;
|
|
} PRJINFO3;
|
|
typedef PRJINFO3 *PPRJINFO3;
|
|
|
|
typedef struct _PRJINFO4
|
|
{
|
|
USHORT uJobId;
|
|
USHORT uPriority;
|
|
PSZ pszUserName;
|
|
USHORT uPosition;
|
|
USHORT fsStatus;
|
|
ULONG ulSubmitted;
|
|
ULONG ulSize;
|
|
PSZ pszComment;
|
|
PSZ pszDocument;
|
|
PSZ pszSpoolFileName;
|
|
PSZ pszPortName;
|
|
PSZ pszStatus;
|
|
ULONG ulPagesSpooled;
|
|
ULONG ulPagesSent;
|
|
ULONG ulPagesPrinted;
|
|
ULONG ulTimePrinted;
|
|
ULONG ulExtendJobStatus;
|
|
ULONG ulStartPage;
|
|
ULONG ulEndPage;
|
|
} PRJINFO4;
|
|
typedef PRJINFO4 *PPRJINFO4;
|
|
|
|
typedef struct _PRDINFO
|
|
{
|
|
CHAR szName[PDLEN+1];
|
|
CHAR szUserName[UNLEN+1];
|
|
USHORT uJobId;
|
|
USHORT fsStatus;
|
|
PSZ pszStatus;
|
|
USHORT time;
|
|
} PRDINFO;
|
|
typedef PRDINFO *PPRDINFO;
|
|
|
|
typedef struct _PRDINFO3
|
|
{
|
|
PSZ pszPrinterName;
|
|
PSZ pszUserName;
|
|
PSZ pszLogAddr;
|
|
USHORT uJobId;
|
|
USHORT fsStatus;
|
|
PSZ pszStatus;
|
|
PSZ pszComment;
|
|
PSZ pszDrivers;
|
|
USHORT time;
|
|
USHORT usTimeOut;
|
|
} PRDINFO3;
|
|
typedef PRDINFO3 *PPRDINFO3;
|
|
|
|
typedef struct _PRQINFO
|
|
{
|
|
CHAR szName[QNLEN+1];
|
|
CHAR pad_1;
|
|
USHORT uPriority;
|
|
USHORT uStartTime;
|
|
USHORT uUntilTime;
|
|
PSZ pszSepFile;
|
|
PSZ pszPrProc;
|
|
PSZ pszDestinations;
|
|
PSZ pszParms;
|
|
PSZ pszComment;
|
|
USHORT fsStatus;
|
|
USHORT cJobs;
|
|
} PRQINFO;
|
|
typedef PRQINFO *PPRQINFO;
|
|
|
|
typedef struct _PRQINFO3
|
|
{
|
|
PSZ pszName;
|
|
USHORT uPriority;
|
|
USHORT uStartTime;
|
|
USHORT uUntilTime;
|
|
USHORT fsType;
|
|
PSZ pszSepFile;
|
|
PSZ pszPrProc;
|
|
PSZ pszParms;
|
|
PSZ pszComment;
|
|
USHORT fsStatus;
|
|
USHORT cJobs;
|
|
PSZ pszPrinters;
|
|
PSZ pszDriverName;
|
|
PDRIVDATA pDriverData;
|
|
} PRQINFO3;
|
|
typedef PRQINFO3 *PPRQINFO3;
|
|
|
|
typedef struct _PRQINFO6
|
|
{
|
|
PSZ pszName;
|
|
USHORT uPriority;
|
|
USHORT uStartTime;
|
|
USHORT uUntilTime;
|
|
USHORT fsType;
|
|
PSZ pszSepFile;
|
|
PSZ pszPrProc;
|
|
PSZ pszParms;
|
|
PSZ pszComment;
|
|
USHORT fsStatus;
|
|
USHORT cJobs;
|
|
PSZ pszPrinters;
|
|
PSZ pszDriverName;
|
|
PDRIVDATA pDriverData;
|
|
PSZ pszRemoteComputerName;
|
|
PSZ pszRemoteQueueName;
|
|
} PRQINFO6;
|
|
typedef PRQINFO6 *PPRQINFO6;
|
|
|
|
typedef struct _PRIDINFO
|
|
{
|
|
USHORT uJobId;
|
|
CHAR szComputerName[CNLEN+1];
|
|
CHAR szQueueName[QNLEN+1];
|
|
CHAR pad_1;
|
|
} PRIDINFO;
|
|
typedef PRIDINFO *PPRIDINFO;
|
|
|
|
typedef struct _PRDRIVINFO
|
|
{
|
|
CHAR szDrivName[DRIV_NAME_SIZE+1+DRIV_DEVICENAME_SIZE+1];
|
|
} PRDRIVINFO;
|
|
typedef PRDRIVINFO *PPRDRIVINFO;
|
|
|
|
typedef struct _PRDRIVINFO2
|
|
{
|
|
PSZ pszPrinterName;
|
|
PSZ pszDriverName;
|
|
USHORT usFlags;
|
|
USHORT cDriverProps;
|
|
} PRDRIVINFO2;
|
|
typedef PRDRIVINFO2 *PPRDRIVINFO2;
|
|
|
|
typedef struct _PRQPROCINFO
|
|
{
|
|
CHAR szQProcName[QNLEN+1];
|
|
} PRQPROCINFO;
|
|
typedef PRQPROCINFO *PPRQPROCINFO;
|
|
|
|
typedef struct _PRPORTINFO
|
|
{
|
|
CHAR szPortName[PDLEN+1];
|
|
} PRPORTINFO;
|
|
typedef PRPORTINFO *PPRPORTINFO;
|
|
|
|
typedef struct _PRPORTINFO1
|
|
{
|
|
PSZ pszPortName;
|
|
PSZ pszPortDriverName;
|
|
PSZ pszPortDriverPathName;
|
|
} PRPORTINFO1;
|
|
typedef PRPORTINFO1 *PPRPORTINFO1;
|
|
|
|
typedef struct _PRPORTINFO2
|
|
{
|
|
PSZ pszPortName;
|
|
PSZ pszPortDriver;
|
|
PSZ pszProtocolConverter;
|
|
ULONG ulReserved;
|
|
ULONG ulMode;
|
|
ULONG ulPriority;
|
|
} PRPORTINFO2;
|
|
typedef PRPORTINFO2 *PPRPORTINFO2;
|
|
|
|
typedef struct _QMJOBINFO
|
|
{
|
|
ULONG ulJobID;
|
|
PSZ pszComputerName;
|
|
PSZ pszQueueName;
|
|
} QMJOBINFO;
|
|
typedef QMJOBINFO *PQMJOBINFO;
|
|
|
|
#endif /* INCL_SPLDOSPRINT */
|
|
#endif /* INCL_SPL */
|
|
|
|
/* -------------------------- HELP MANAGER -------------------------------- */
|
|
|
|
#if defined (INCL_WINHELP)
|
|
|
|
#define CMIC_HIDE_PANEL_ID 0x0000
|
|
#define CMIC_SHOW_PANEL_ID 0x0001
|
|
#define CMIC_TOGGLE_PANEL_ID 0x0002
|
|
|
|
#define CTRL_PREVIOUS_ID ((USHORT)0x0001)
|
|
#define CTRL_SEARCH_ID ((USHORT)0x0002)
|
|
#define CTRL_PRINT_ID ((USHORT)0x0003)
|
|
#define CTRL_INDEX_ID ((USHORT)0x0004)
|
|
#define CTRL_CONTENTS_ID ((USHORT)0x0005)
|
|
#define CTRL_BACK_ID ((USHORT)0x0006)
|
|
#define CTRL_FORWARD_ID ((USHORT)0x0007)
|
|
#define CTRL_TUTORIAL_ID ((USHORT)0x00ff)
|
|
#define CTRL_USER_ID_BASE ((USHORT)0x0101)
|
|
|
|
#define HM_MSG_BASE 0x0220
|
|
#define HM_DISMISS_WINDOW 0x0221
|
|
#define HM_DISPLAY_HELP 0x0222
|
|
#define HM_EXT_HELP 0x0223
|
|
#define HM_GENERAL_HELP 0x0223 /*!*/
|
|
#define HM_SET_ACTIVE_WINDOW 0x0224
|
|
#define HM_LOAD_HELP_TABLE 0x0225
|
|
#define HM_CREATE_HELP_TABLE 0x0226
|
|
#define HM_SET_HELP_WINDOW_TITLE 0x0227
|
|
#define HM_SET_SHOW_PANEL_ID 0x0228
|
|
#define HM_REPLACE_HELP_FOR_HELP 0x0229
|
|
#define HM_REPLACE_USING_HELP 0x0229 /*!*/
|
|
#define HM_HELP_INDEX 0x022a
|
|
#define HM_HELP_CONTENTS 0x022b
|
|
#define HM_KEYS_HELP 0x022c
|
|
#define HM_SET_HELP_LIBRARY_NAME 0x022d
|
|
#define HM_ERROR 0x022e
|
|
#define HM_HELPSUBITEM_NOT_FOUND 0x022f
|
|
#define HM_QUERY_KEYS_HELP 0x0230
|
|
#define HM_TUTORIAL 0x0231
|
|
#define HM_EXT_HELP_UNDEFINED 0x0232
|
|
#define HM_GENERAL_HELP_UNDEFINED 0x0232 /*!*/
|
|
#define HM_ACTIONBAR_COMMAND 0x0233
|
|
#define HM_INFORM 0x0234
|
|
#define HM_SET_OBJCOM_WINDOW 0x0238
|
|
#define HM_UPDATE_OBJCOM_WINDOW_CHAIN 0x0239
|
|
#define HM_QUERY_DDF_DATA 0x023a
|
|
#define HM_INVALIDATE_DDF_DATA 0x023b
|
|
#define HM_QUERY 0x023c
|
|
#define HM_SET_COVERPAGE_SIZE 0x023d
|
|
#define HM_NOTIFY 0x0242
|
|
#define HM_SET_USERDATA 0x0243
|
|
#define HM_CONTROL 0x0244
|
|
|
|
#define HM_RESOURCEID 0
|
|
#define HM_PANELNAME 1
|
|
|
|
#define HMERR_NO_FRAME_WND_IN_CHAIN 0x1001
|
|
#define HMERR_INVALID_ASSOC_APP_WND 0x1002
|
|
#define HMERR_INVALID_ASSOC_HELP_INST 0x1003
|
|
#define HMERR_INVALID_DESTROY_HELP_INST 0x1004
|
|
#define HMERR_NO_HELP_INST_IN_CHAIN 0x1005
|
|
#define HMERR_INVALID_HELP_INSTANCE_HDL 0x1006
|
|
#define HMERR_INVALID_QUERY_APP_WND 0x1007
|
|
#define HMERR_HELP_INST_CALLED_INVALID 0x1008
|
|
#define HMERR_HELPTABLE_UNDEFINE 0x1009
|
|
#define HMERR_HELP_INSTANCE_UNDEFINE 0x100a
|
|
#define HMERR_HELPITEM_NOT_FOUND 0x100b
|
|
#define HMERR_INVALID_HELPSUBITEM_SIZE 0x100c
|
|
#define HMERR_HELPSUBITEM_NOT_FOUND 0x100d
|
|
|
|
#define HMERR_INDEX_NOT_FOUND 0x2001
|
|
#define HMERR_CONTENT_NOT_FOUND 0x2002
|
|
#define HMERR_OPEN_LIB_FILE 0x2003
|
|
#define HMERR_READ_LIB_FILE 0x2004
|
|
#define HMERR_CLOSE_LIB_FILE 0x2005
|
|
#define HMERR_INVALID_LIB_FILE 0x2006
|
|
#define HMERR_NO_MEMORY 0x2007
|
|
#define HMERR_ALLOCATE_SEGMENT 0x2008
|
|
#define HMERR_FREE_MEMORY 0x2009
|
|
#define HMERR_PANEL_NOT_FOUND 0x2010
|
|
#define HMERR_DATABASE_NOT_OPEN 0x2011
|
|
#define HMERR_LOAD_DLL 0x2013
|
|
|
|
#define HMPANELTYPE_NUMBER 0
|
|
#define HMPANELTYPE_NAME 1
|
|
|
|
#define HMQVP_NUMBER 0x0001
|
|
#define HMQVP_NAME 0x0002
|
|
#define HMQVP_GROUP 0x0003
|
|
|
|
#define HMQW_COVERPAGE 0x0001
|
|
#define HMQW_INDEX 0x0002
|
|
#define HMQW_TOC 0x0003
|
|
#define HMQW_SEARCH 0x0004
|
|
#define HMQW_VIEWPAGES 0x0005
|
|
#define HMQW_LIBRARY 0x0006
|
|
#define HMQW_VIEWPORT 0x0007
|
|
#define HMQW_OBJCOM_WINDOW 0x0008
|
|
#define HMQW_INSTANCE 0x0009
|
|
#define HMQW_ACTIVEVIEWPORT 0x000a
|
|
#define CONTROL_SELECTED 0x000b
|
|
|
|
#define HMQW_GROUP_VIEWPORT 0x00f1
|
|
#define HMQW_RES_VIEWPORT 0x00f2
|
|
#define USERDATA 0x00f3
|
|
|
|
#define HWND_PARENT (HWND)NULL
|
|
|
|
#define OPEN_COVERPAGE 0x0001
|
|
#define OPEN_PAGE 0x0002
|
|
#define SWAP_PAGE 0x0003
|
|
#define OPEN_TOC 0x0004
|
|
#define OPEN_INDEX 0x0005
|
|
#define OPEN_HISTORY 0x0006
|
|
#define OPEN_SEARCH_HIT_LIST 0x0007
|
|
#define OPEN_LIBRARY 0x0008
|
|
|
|
|
|
typedef USHORT HELPSUBTABLE;
|
|
typedef HELPSUBTABLE *PHELPSUBTABLE;
|
|
|
|
|
|
typedef struct _ACVP
|
|
{
|
|
ULONG cb;
|
|
HAB hAB;
|
|
HMQ hmq;
|
|
ULONG ObjectID;
|
|
HWND hWndParent;
|
|
HWND hWndOwner;
|
|
HWND hWndACVP;
|
|
} ACVP;
|
|
typedef ACVP *PACVP;
|
|
|
|
typedef struct _HELPTABLE
|
|
{
|
|
USHORT idAppWindow;
|
|
PHELPSUBTABLE phstHelpSubTable;
|
|
USHORT idExtPanel;
|
|
} HELPTABLE;
|
|
typedef HELPTABLE *PHELPTABLE;
|
|
|
|
typedef struct _HELPINIT
|
|
{
|
|
ULONG cb;
|
|
ULONG ulReturnCode;
|
|
PSZ pszTutorialName;
|
|
PHELPTABLE phtHelpTable;
|
|
HMODULE hmodHelpTableModule;
|
|
HMODULE hmodAccelActionBarModule;
|
|
ULONG idAccelTable;
|
|
ULONG idActionBar;
|
|
PSZ pszHelpWindowTitle;
|
|
ULONG fShowPanelId;
|
|
PSZ pszHelpLibraryName;
|
|
} HELPINIT;
|
|
typedef HELPINIT *PHELPINIT;
|
|
|
|
BOOL WinAssociateHelpInstance (HWND hwndHelpInstance, HWND hwndApp);
|
|
HWND WinCreateHelpInstance (HAB hab, PHELPINIT phinitHMInitStructure);
|
|
BOOL WinCreateHelpTable (HWND hwndHelpInstance,
|
|
__const__ HELPTABLE *phtHelpTable);
|
|
BOOL WinDestroyHelpInstance (HWND hwndHelpInstance);
|
|
BOOL WinLoadHelpTable (HWND hwndHelpInstance, ULONG idHelpTable,
|
|
HMODULE Module);
|
|
HWND WinQueryHelpInstance (HWND hwndApp);
|
|
|
|
#endif /* INCL_WINHELP */
|
|
|
|
|
|
#if defined (INCL_DDF)
|
|
|
|
#define ART_RUNIN 0x0010
|
|
#define ART_LEFT 0x0001
|
|
#define ART_RIGHT 0x0002
|
|
#define ART_CENTER 0x0004
|
|
|
|
#define CLR_UNCHANGED (-6)
|
|
|
|
#define HMBT_NONE 1
|
|
#define HMBT_ALL 2
|
|
#define HMBT_FIT 3
|
|
|
|
#define HMERR_DDF_MEMORY 0x3001
|
|
#define HMERR_DDF_ALIGN_TYPE 0x3002
|
|
#define HMERR_DDF_BACKCOLOR 0x3003
|
|
#define HMERR_DDF_FORECOLOR 0x3004
|
|
#define HMERR_DDF_FONTSTYLE 0x3005
|
|
#define HMERR_DDF_REFTYPE 0x3006
|
|
#define HMERR_DDF_LIST_UNCLOSED 0x3007
|
|
#define HMERR_DDF_LIST_UNINITIALIZED 0x3008
|
|
#define HMERR_DDF_LIST_BREAKTYPE 0x3009
|
|
#define HMERR_DDF_LIST_SPACING 0x300A
|
|
#define HMERR_DDF_HINSTANCE 0x300B
|
|
#define HMERR_DDF_EXCEED_MAX_LENGTH 0x300C
|
|
#define HMERR_DDF_EXCEED_MAX_INC 0x300D
|
|
#define HMERR_DDF_INVALID_DDF 0x300E
|
|
#define HMERR_DDF_FORMAT_TYPE 0x300F
|
|
#define HMERR_DDF_INVALID_PARM 0x3010
|
|
#define HMERR_DDF_INVALID_FONT 0x3011
|
|
#define HMERR_DDF_SEVERE 0x3012
|
|
|
|
#define HMLS_SINGLELINE 1
|
|
#define HMLS_DOUBLELINE 2
|
|
|
|
#define REFERENCE_BY_ID 0
|
|
#define REFERENCE_BY_RES 1
|
|
|
|
typedef VOID *HDDF;
|
|
|
|
BOOL DdfBeginList (HDDF hddf, ULONG ulWidthDT, ULONG fBreakType,
|
|
ULONG fSpacing);
|
|
BOOL DdfBitmap (HDDF hddf, HBITMAP hbm, ULONG fAlign);
|
|
BOOL DdfEndList (HDDF hddf);
|
|
BOOL DdfHyperText (HDDF hddf, PCSZ pszText, PCSZ pszReference,
|
|
ULONG fReferenceType);
|
|
BOOL DdfInform (HDDF hddf, PCSZ pszText, ULONG resInformNumber);
|
|
HDDF DdfInitialize (HWND hwndHelpInstance, ULONG cbBuffer, ULONG ulIncrement);
|
|
BOOL DdfListItem (HDDF hddf, PCSZ pszTerm, PCSZ pszDescription);
|
|
BOOL DdfMetafile (HDDF hddf, HMF hmf, __const__ RECTL *prclRect);
|
|
BOOL DdfPara (HDDF hddf);
|
|
BOOL DdfSetColor (HDDF hddf, COLOR fBackColor, COLOR fForColor);
|
|
BOOL DdfSetFont (HDDF hddf, PCSZ pszFaceName, ULONG ulWidth, ULONG ulHeight);
|
|
BOOL DdfSetFontStyle (HDDF hddf, ULONG fFontStyle);
|
|
BOOL DdfSetFormat (HDDF hddf, ULONG fFormatType);
|
|
BOOL DdfSetTextAlign (HDDF hddf, ULONG fAlign);
|
|
BOOL DdfText (HDDF hddf, PCSZ pszText);
|
|
|
|
#endif /* INCL_DDF */
|
|
|
|
/* ---------------------- Advanced Video ---------------------------------- */
|
|
|
|
#if defined (INCL_FONTFILEFORMAT)
|
|
|
|
#define FONTDEFFONT1 0x0047
|
|
#define FONTDEFFONT2 0x0042
|
|
#define FONTDEFFONT3 0x0042
|
|
#define FONTDEFCHAR1 0x0081
|
|
#define FONTDEFCHAR2 0x0081
|
|
#define FONTDEFCHAR3 0x00b8
|
|
#define FONTDEFDEVFONT 0x2000
|
|
#define FONTDEFFOCA32 0x4000
|
|
#define SPACE_UNDEF 0x8000
|
|
|
|
#define FONT_SIGNATURE 0xfffffffe
|
|
#define FONT_METRICS 0x00000001
|
|
#define FONT_DEFINITION 0x00000002
|
|
#define FONT_KERNPAIRS 0x00000003
|
|
#define FONT_ADDITIONALMETRICS 0x00000004
|
|
#define FONT_ENDRECORD 0xffffffff
|
|
|
|
#define QUERY_PUBLIC_FONTS 0x0001
|
|
#define QUERY_PRIVATE_FONTS 0x0002
|
|
|
|
#define CDEF_GENERIC 0x0001
|
|
#define CDEF_BOLD 0x0002
|
|
#define CDEF_ITALIC 0x0004
|
|
#define CDEF_UNDERSCORE 0x0008
|
|
#define CDEF_STRIKEOUT 0x0010
|
|
#define CDEF_OUTLINE 0x0020
|
|
|
|
typedef struct _FOCAMETRICS
|
|
{
|
|
ULONG ulIdentity;
|
|
ULONG ulSize;
|
|
CHAR szFamilyname[32];
|
|
CHAR szFacename[32];
|
|
SHORT usRegistryId;
|
|
SHORT usCodePage;
|
|
SHORT yEmHeight;
|
|
SHORT yXHeight;
|
|
SHORT yMaxAscender;
|
|
SHORT yMaxDescender;
|
|
SHORT yLowerCaseAscent;
|
|
SHORT yLowerCaseDescent;
|
|
SHORT yInternalLeading;
|
|
SHORT yExternalLeading;
|
|
SHORT xAveCharWidth;
|
|
SHORT xMaxCharInc;
|
|
SHORT xEmInc;
|
|
SHORT yMaxBaselineExt;
|
|
SHORT sCharSlope;
|
|
SHORT sInlineDir;
|
|
SHORT sCharRot;
|
|
USHORT usWeightClass;
|
|
USHORT usWidthClass;
|
|
SHORT xDeviceRes;
|
|
SHORT yDeviceRes;
|
|
SHORT usFirstChar;
|
|
SHORT usLastChar;
|
|
SHORT usDefaultChar;
|
|
SHORT usBreakChar;
|
|
SHORT usNominalPointSize;
|
|
SHORT usMinimumPointSize;
|
|
SHORT usMaximumPointSize;
|
|
SHORT fsTypeFlags;
|
|
SHORT fsDefn;
|
|
SHORT fsSelectionFlags;
|
|
SHORT fsCapabilities;
|
|
SHORT ySubscriptXSize;
|
|
SHORT ySubscriptYSize;
|
|
SHORT ySubscriptXOffset;
|
|
SHORT ySubscriptYOffset;
|
|
SHORT ySuperscriptXSize;
|
|
SHORT ySuperscriptYSize;
|
|
SHORT ySuperscriptXOffset;
|
|
SHORT ySuperscriptYOffset;
|
|
SHORT yUnderscoreSize;
|
|
SHORT yUnderscorePosition;
|
|
SHORT yStrikeoutSize;
|
|
SHORT yStrikeoutPosition;
|
|
SHORT usKerningPairs;
|
|
SHORT sFamilyClass;
|
|
PSZ pszDeviceNameOffset;
|
|
} FOCAMETRICS;
|
|
typedef FOCAMETRICS *PFOCAMETRICS;
|
|
|
|
typedef struct _FONTFILEMETRICS
|
|
{
|
|
ULONG ulIdentity;
|
|
ULONG ulSize;
|
|
CHAR szFamilyname[32];
|
|
CHAR szFacename[32];
|
|
SHORT usRegistryId;
|
|
SHORT usCodePage;
|
|
SHORT yEmHeight;
|
|
SHORT yXHeight;
|
|
SHORT yMaxAscender;
|
|
SHORT yMaxDescender;
|
|
SHORT yLowerCaseAscent;
|
|
SHORT yLowerCaseDescent;
|
|
SHORT yInternalLeading;
|
|
SHORT yExternalLeading;
|
|
SHORT xAveCharWidth;
|
|
SHORT xMaxCharInc;
|
|
SHORT xEmInc;
|
|
SHORT yMaxBaselineExt;
|
|
SHORT sCharSlope;
|
|
SHORT sInlineDir;
|
|
SHORT sCharRot;
|
|
USHORT usWeightClass;
|
|
USHORT usWidthClass;
|
|
SHORT xDeviceRes;
|
|
SHORT yDeviceRes;
|
|
SHORT usFirstChar;
|
|
SHORT usLastChar;
|
|
SHORT usDefaultChar;
|
|
SHORT usBreakChar;
|
|
SHORT usNominalPointSize;
|
|
SHORT usMinimumPointSize;
|
|
SHORT usMaximumPointSize;
|
|
SHORT fsTypeFlags;
|
|
SHORT fsDefn;
|
|
SHORT fsSelectionFlags;
|
|
SHORT fsCapabilities;
|
|
SHORT ySubscriptXSize;
|
|
SHORT ySubscriptYSize;
|
|
SHORT ySubscriptXOffset;
|
|
SHORT ySubscriptYOffset;
|
|
SHORT ySuperscriptXSize;
|
|
SHORT ySuperscriptYSize;
|
|
SHORT ySuperscriptXOffset;
|
|
SHORT ySuperscriptYOffset;
|
|
SHORT yUnderscoreSize;
|
|
SHORT yUnderscorePosition;
|
|
SHORT yStrikeoutSize;
|
|
SHORT yStrikeoutPosition;
|
|
SHORT usKerningPairs;
|
|
SHORT sFamilyClass;
|
|
ULONG ulReserved;
|
|
PANOSE panose;
|
|
} FONTFILEMETRICS;
|
|
typedef FONTFILEMETRICS *PFONTFILEMETRICS;
|
|
|
|
typedef struct _FONTDEFINITIONHEADER
|
|
{
|
|
ULONG ulIdentity;
|
|
ULONG ulSize;
|
|
SHORT fsFontdef;
|
|
SHORT fsChardef;
|
|
SHORT usCellSize;
|
|
SHORT xCellWidth;
|
|
SHORT yCellHeight;
|
|
SHORT xCellIncrement;
|
|
SHORT xCellA;
|
|
SHORT xCellB;
|
|
SHORT xCellC;
|
|
SHORT pCellBaseOffset;
|
|
} FONTDEFINITIONHEADER;
|
|
typedef FONTDEFINITIONHEADER *PFONTDEFINITIONHEADER;
|
|
|
|
typedef struct _FONTSIGNATURE
|
|
{
|
|
ULONG ulIdentity;
|
|
ULONG ulSize;
|
|
CHAR achSignature[12];
|
|
} FONTSIGNATURE;
|
|
typedef FONTSIGNATURE *PFONTSIGNATURE;
|
|
|
|
typedef struct _ADDITIONALMETRICS
|
|
{
|
|
ULONG ulIdentity;
|
|
ULONG ulSize;
|
|
PANOSE panose;
|
|
} ADDITIONALMETRICS;
|
|
typedef ADDITIONALMETRICS *PADDITIONALMETRICS;
|
|
|
|
typedef struct _FOCAFONT
|
|
{
|
|
FONTSIGNATURE fsSignature;
|
|
FOCAMETRICS fmMetrics;
|
|
FONTDEFINITIONHEADER fdDefinitions;
|
|
} FOCAFONT;
|
|
typedef FOCAFONT *PFOCAFONT;
|
|
|
|
typedef FOCAFONT FOCAFONT32;
|
|
typedef FOCAFONT32 *PFOCAFONT32;
|
|
|
|
#endif /* INCL_FONTFILEFORMAT */
|
|
|
|
/* ---------------------- Advanced Video ---------------------------------- */
|
|
|
|
#if defined (INCL_AVIO)
|
|
|
|
#define FORMAT_CGA 0x0001
|
|
#define FORMAT_4BYTE 0x0003
|
|
|
|
#define VQF_PUBLIC 0x0001
|
|
#define VQF_PRIVATE 0x0002
|
|
|
|
typedef USHORT HVPS;
|
|
typedef HVPS *PHVPS;
|
|
|
|
USHORT VioAssociate (HDC hdc, HVPS hvps);
|
|
USHORT VioCreateLogFont (PFATTRS pfatattrs, LONG llcid, PSTR8 pName,
|
|
HVPS hvps);
|
|
USHORT VioCreatePS (PHVPS phvps, SHORT sDepth, SHORT sWidth, SHORT sFormat,
|
|
SHORT sAttrs, HVPS hvpsReserved);
|
|
USHORT VioDeleteSetId (LONG llcid, HVPS hvps);
|
|
USHORT VioDestroyPS (HVPS hvps);
|
|
USHORT VioGetDeviceCellSize (PSHORT psHeight, PSHORT psWidth, HVPS hvps);
|
|
USHORT VioGetOrg (PSHORT psRow, PSHORT psColumn, HVPS hvps);
|
|
USHORT VioQueryFonts (PLONG plRemfonts, PFONTMETRICS afmMetrics,
|
|
LONG lMetricsLength, PLONG plFonts, PSZ pszFacename, ULONG flOptions,
|
|
HVPS hvps);
|
|
USHORT VioQuerySetIds (PLONG allcids, PSTR8 pNames, PLONG alTypes, LONG lcount,
|
|
HVPS hvps);
|
|
USHORT VioSetDeviceCellSize (SHORT sHeight, SHORT sWidth, HVPS hvps);
|
|
USHORT VioSetOrg (SHORT sRow, SHORT sColumn, HVPS hvps);
|
|
USHORT VioShowPS (SHORT sDepth, SHORT sWidth, SHORT soffCell, HVPS hvps);
|
|
|
|
MRESULT WinDefAVioWindowProc (HWND hwnd, USHORT msg, ULONG mp1, ULONG mp2);
|
|
|
|
#endif /* INCL_AVIO */
|
|
|
|
/* --------------------------- MONITORS ----------------------------------- */
|
|
|
|
#if defined (INCL_DOSMONITORS)
|
|
|
|
#define MONITOR_DEFAULT 0x0000
|
|
#define MONITOR_BEGIN 0x0001
|
|
#define MONITOR_END 0x0002
|
|
|
|
typedef SHANDLE HMONITOR;
|
|
typedef HMONITOR *PHMONITOR;
|
|
|
|
typedef struct _MONIN
|
|
{
|
|
USHORT cb;
|
|
BYTE abReserved[18];
|
|
BYTE abBuffer[108];
|
|
} MONIN;
|
|
typedef MONIN *PMONIN;
|
|
|
|
typedef struct _MONOUT
|
|
{
|
|
USHORT cb;
|
|
UCHAR buffer[18];
|
|
BYTE abBuf[108];
|
|
} MONOUT;
|
|
typedef MONOUT *PMONOUT;
|
|
|
|
USHORT DosMonOpen (PSZ pszDevName, PHMONITOR phmon);
|
|
USHORT DosMonClose (HMONITOR hmon);
|
|
USHORT DosMonReg (HMONITOR hmon, PBYTE pbInBuf, PBYTE pbOutBuf,
|
|
USHORT fPosition, USHORT usIndex);
|
|
USHORT DosMonRead (PBYTE pbInBuf, USHORT fWait, PBYTE pbDataBuf,
|
|
PUSHORT pcbData);
|
|
USHORT DosMonWrite (PBYTE pbOutBuf, PBYTE pbDataBuf, USHORT cbData);
|
|
|
|
#endif /* INCL_DOSMONITORS */
|
|
|
|
/* -------------------------- SUBSYSTEMS ---------------------------------- */
|
|
|
|
#if defined (INCL_KBD)
|
|
|
|
#define IO_WAIT 0
|
|
#define IO_NOWAIT 1
|
|
|
|
#define KBDSTF_RIGHTSHIFT 0x0001
|
|
#define KBDSTF_LEFTSHIFT 0x0002
|
|
#define KBDSTF_CONTROL 0x0004
|
|
#define KBDSTF_ALT 0x0008
|
|
#define KBDSTF_SCROLLLOCK_ON 0x0010
|
|
#define KBDSTF_NUMLOCK_ON 0x0020
|
|
#define KBDSTF_CAPSLOCK_ON 0x0040
|
|
#define KBDSTF_INSERT_ON 0x0080
|
|
#define KBDSTF_LEFTCONTROL 0x0100
|
|
#define KBDSTF_LEFTALT 0x0200
|
|
#define KBDSTF_RIGHTCONTROL 0x0400
|
|
#define KBDSTF_RIGHTALT 0x0800
|
|
#define KBDSTF_SCROLLLOCK 0x1000
|
|
#define KBDSTF_NUMLOCK 0x2000
|
|
#define KBDSTF_CAPSLOCK 0x4000
|
|
#define KBDSTF_SYSREQ 0x8000
|
|
|
|
#define KBDTRF_SHIFT_KEY_IN 0x01
|
|
#define KBDTRF_EXTENDED_CODE 0x02
|
|
#define KBDTRF_CONVERSION_REQUEST 0x20
|
|
#define KBDTRF_FINAL_CHAR_IN 0x40
|
|
#define KBDTRF_INTERIM_CHAR_IN 0x80
|
|
|
|
#define KEYBOARD_ECHO_ON 0x0001
|
|
#define KEYBOARD_ECHO_OFF 0x0002
|
|
#define KEYBOARD_BINARY_MODE 0x0004
|
|
#define KEYBOARD_ASCII_MODE 0x0008
|
|
#define KEYBOARD_MODIFY_STATE 0x0010
|
|
#define KEYBOARD_MODIFY_INTERIM 0x0020
|
|
#define KEYBOARD_MODIFY_TURNAROUND 0x0040
|
|
#define KEYBOARD_2B_TURNAROUND 0x0080
|
|
#define KEYBOARD_SHIFT_REPORT 0x0100
|
|
|
|
#define KR_KBDCHARIN 0x00000001
|
|
#define KR_KBDPEEK 0x00000002
|
|
#define KR_KBDFLUSHBUFFER 0x00000004
|
|
#define KR_KBDGETSTATUS 0x00000008
|
|
#define KR_KBDSETSTATUS 0x00000010
|
|
#define KR_KBDSTRINGIN 0x00000020
|
|
#define KR_KBDOPEN 0x00000040
|
|
#define KR_KBDCLOSE 0x00000080
|
|
#define KR_KBDGETFOCUS 0x00000100
|
|
#define KR_KBDFREEFOCUS 0x00000200
|
|
#define KR_KBDGETCP 0x00000400
|
|
#define KR_KBDSETCP 0x00000800
|
|
#define KR_KBDXLATE 0x00001000
|
|
#define KR_KBDSETCUSTXT 0x00002000
|
|
|
|
typedef USHORT HKBD;
|
|
typedef HKBD *PHKBD;
|
|
|
|
typedef struct _KBDKEYINFO
|
|
{
|
|
UCHAR chChar;
|
|
UCHAR chScan;
|
|
UCHAR fbStatus;
|
|
UCHAR bNlsShift;
|
|
USHORT fsState;
|
|
ULONG time;
|
|
} KBDKEYINFO;
|
|
typedef KBDKEYINFO *PKBDKEYINFO;
|
|
|
|
typedef struct _KBDINFO
|
|
{
|
|
USHORT cb;
|
|
USHORT fsMask;
|
|
USHORT chTurnAround;
|
|
USHORT fsInterim;
|
|
USHORT fsState;
|
|
} KBDINFO;
|
|
typedef KBDINFO *PKBDINFO;
|
|
|
|
typedef struct _KBDHWID
|
|
{
|
|
USHORT cb;
|
|
USHORT idKbd;
|
|
USHORT usReserved1;
|
|
USHORT usReserved2;
|
|
} KBDHWID;
|
|
typedef KBDHWID *PKBDHWID;
|
|
|
|
typedef struct _KBDTRANS
|
|
{
|
|
UCHAR chChar;
|
|
UCHAR chScan;
|
|
UCHAR fbStatus;
|
|
UCHAR bNlsShift;
|
|
USHORT fsState;
|
|
ULONG time;
|
|
USHORT fsDD;
|
|
USHORT fsXlate;
|
|
USHORT fsShift;
|
|
USHORT sZero;
|
|
} KBDTRANS;
|
|
typedef KBDTRANS *PKBDTRANS;
|
|
|
|
typedef struct _STRINGINBUF
|
|
{
|
|
USHORT cb;
|
|
USHORT cchIn;
|
|
} STRINGINBUF;
|
|
typedef STRINGINBUF *PSTRINGINBUF;
|
|
|
|
USHORT KbdCharIn (PKBDKEYINFO pkbci, USHORT fWait, HKBD hkbd);
|
|
USHORT KbdClose (HKBD hkbd);
|
|
USHORT KbdDeRegister (VOID);
|
|
USHORT KbdFlushBuffer (HKBD hkbd);
|
|
USHORT KbdFreeFocus (HKBD hkbd);
|
|
USHORT KbdGetCp (ULONG ulReserved, PUSHORT pidCP, HKBD hkbd);
|
|
USHORT KbdGetFocus (USHORT fWait, HKBD hkbd);
|
|
USHORT KbdGetHWID (PKBDHWID pkbdhwid, HKBD hkbd);
|
|
USHORT KbdGetStatus (PKBDINFO pkbdinfo, HKBD hkbd);
|
|
USHORT KbdOpen (PHKBD phkbd);
|
|
USHORT KbdPeek (PKBDKEYINFO pkbci, HKBD hkbd);
|
|
USHORT KbdRegister (PCSZ pszModName, PCSZ pszEntryName, ULONG ulFunMask);
|
|
USHORT KbdSetCp (USHORT usReserved, USHORT idCP, HKBD hkbd);
|
|
USHORT KbdSetCustXt (PUSHORT pusCodePage, HKBD hkbd);
|
|
USHORT KbdSetFgnd (VOID);
|
|
USHORT KbdSetHWID (PKBDHWID pkbdhwid, HKBD hkbd);
|
|
USHORT KbdSetStatus (PKBDINFO pkbdinfo, HKBD hkbd);
|
|
USHORT KbdStringIn (PCH pch, PSTRINGINBUF pchIn, USHORT fWait, HKBD hkbd);
|
|
USHORT KbdSynch (USHORT fWait);
|
|
USHORT KbdXlate (PKBDTRANS pkbdtrans, HKBD hkbd);
|
|
|
|
#endif /* INCL_KBD */
|
|
|
|
#if defined (INCL_VIO)
|
|
|
|
#define ANSI_OFF 0
|
|
#define ANSI_ON 1
|
|
|
|
#define COLORS_2 0x01
|
|
#define COLORS_4 0x02
|
|
#define COLORS_16 0x04
|
|
|
|
#define VGMT_OTHER 0x01
|
|
#define VGMT_GRAPHICS 0x02
|
|
#define VGMT_DISABLEBURST 0x04
|
|
|
|
#define VP_NOWAIT 0x0000
|
|
#define VP_WAIT 0x0001
|
|
#define VP_OPAQUE 0x0000
|
|
#define VP_TRANSPARENT 0x0002
|
|
|
|
#define VMWR_POPUP 0
|
|
#define VMWN_POPUP 0
|
|
|
|
#define VSRWI_SAVEANDREDRAW 0
|
|
#define VSRWI_REDRAW 1
|
|
|
|
#define VSRWN_SAVE 0
|
|
#define VSRWN_REDRAW 1
|
|
|
|
#define UNDOI_GETOWNER 0
|
|
#define UNDOI_RELEASEOWNER 1
|
|
|
|
#define UNDOK_ERRORCODE 0
|
|
#define UNDOK_TERMINATE 1
|
|
|
|
#define LOCKIO_NOWAIT 0
|
|
#define LOCKIO_WAIT 1
|
|
|
|
#define LOCK_SUCCESS 0
|
|
#define LOCK_FAIL 1
|
|
|
|
#define VCC_SBCSCHAR 0
|
|
#define VCC_DBCSFULLCHAR 1
|
|
#define VCC_DBCS1STHALF 2
|
|
#define VCC_DBCS2NDHALF 3
|
|
|
|
#define VGFI_GETCURFONT 0
|
|
#define VGFI_GETROMFONT 1
|
|
|
|
#define VIO_CONFIG_CURRENT 0
|
|
#define VIO_CONFIG_PRIMARY 1
|
|
#define VIO_CONFIG_SECONDARY 2
|
|
|
|
#define DISPLAY_MONOCHROME 0
|
|
#define DISPLAY_CGA 1
|
|
#define DISPLAY_EGA 2
|
|
#define DISPLAY_VGA 3
|
|
#define DISPLAY_8514A 7
|
|
#define DISPLAY_IMAGEADAPTER 8
|
|
#define DISPLAY_XGA 9
|
|
|
|
#define MONITOR_MONOCHROME 0x0000
|
|
#define MONITOR_COLOR 0x0001
|
|
#define MONITOR_ENHANCED 0x0002
|
|
#define MONITOR_8503 0x0003
|
|
#define MONITOR_851X_COLOR 0x0004
|
|
#define MONITOR_8514 0x0009
|
|
#define MONITOR_FLATPANEL 0x000a
|
|
#define MONITOR_8507_8604 0x000b
|
|
#define MONITOR_8515 0x000c
|
|
#define MONITOR_9515 0x000f
|
|
#define MONITOR_9517 0x0011
|
|
#define MONITOR_9518 0x0012
|
|
|
|
#define VR_VIOGETCURPOS 0x00000001
|
|
#define VR_VIOGETCURTYPE 0x00000002
|
|
#define VR_VIOGETMODE 0x00000004
|
|
#define VR_VIOGETBUF 0x00000008
|
|
#define VR_VIOGETPHYSBUF 0x00000010
|
|
#define VR_VIOSETCURPOS 0x00000020
|
|
#define VR_VIOSETCURTYPE 0x00000040
|
|
#define VR_VIOSETMODE 0x00000080
|
|
#define VR_VIOSHOWBUF 0x00000100
|
|
#define VR_VIOREADCHARSTR 0x00000200
|
|
#define VR_VIOREADCELLSTR 0x00000400
|
|
#define VR_VIOWRTNCHAR 0x00000800
|
|
#define VR_VIOWRTNATTR 0x00001000
|
|
#define VR_VIOWRTNCELL 0x00002000
|
|
#define VR_VIOWRTTTY 0x00004000
|
|
#define VR_VIOWRTCHARSTR 0x00008000
|
|
#define VR_VIOWRTCHARSTRATT 0x00010000
|
|
#define VR_VIOWRTCELLSTR 0x00020000
|
|
#define VR_VIOSCROLLUP 0x00040000
|
|
#define VR_VIOSCROLLDN 0x00080000
|
|
#define VR_VIOSCROLLLF 0x00100000
|
|
#define VR_VIOSCROLLRT 0x00200000
|
|
#define VR_VIOSETANSI 0x00400000
|
|
#define VR_VIOGETANSI 0x00800000
|
|
#define VR_VIOPRTSC 0x01000000
|
|
#define VR_VIOSCRLOCK 0x02000000
|
|
#define VR_VIOSCRUNLOCK 0x04000000
|
|
#define VR_VIOSAVREDRAWWAIT 0x08000000
|
|
#define VR_VIOSAVREDRAWUNDO 0x10000000
|
|
#define VR_VIOPOPUP 0x20000000
|
|
#define VR_VIOENDPOPUP 0x40000000
|
|
#define VR_VIOPRTSCTOGGLE 0x80000000
|
|
|
|
#define VR_VIOMODEWAIT 0x00000001
|
|
#define VR_VIOMODEUNDO 0x00000002
|
|
#define VR_VIOGETFONT 0x00000004
|
|
#define VR_VIOGETCONFIG 0x00000008
|
|
#define VR_VIOSETCP 0x00000010
|
|
#define VR_VIOGETCP 0x00000020
|
|
#define VR_VIOSETFONT 0x00000040
|
|
#define VR_VIOGETSTATE 0x00000080
|
|
#define VR_VIOSETSTATE 0x00000100
|
|
|
|
|
|
typedef USHORT HVIO;
|
|
typedef HVIO *PHVIO;
|
|
|
|
|
|
typedef struct _VIOMODEINFO
|
|
{
|
|
USHORT cb;
|
|
UCHAR fbType;
|
|
UCHAR color;
|
|
USHORT col;
|
|
USHORT row;
|
|
USHORT hres;
|
|
USHORT vres;
|
|
UCHAR fmt_ID;
|
|
UCHAR attrib;
|
|
ULONG buf_addr;
|
|
ULONG buf_length;
|
|
ULONG full_length;
|
|
ULONG partial_length;
|
|
PCH ext_data_addr;
|
|
} VIOMODEINFO;
|
|
typedef VIOMODEINFO *PVIOMODEINFO;
|
|
|
|
typedef struct _VIOCONFIGINFO
|
|
{
|
|
USHORT cb;
|
|
USHORT adapter;
|
|
USHORT display;
|
|
ULONG cbMemory;
|
|
USHORT Configuration;
|
|
USHORT VDHVersion;
|
|
USHORT Flags;
|
|
ULONG HWBufferSize;
|
|
ULONG FullSaveSize;
|
|
ULONG PartSaveSize;
|
|
USHORT EMAdaptersOFF;
|
|
USHORT EMDisplaysOFF;
|
|
} VIOCONFIGINFO;
|
|
typedef VIOCONFIGINFO *PVIOCONFIGINFO;
|
|
|
|
typedef struct _VIOPHYSBUF
|
|
{
|
|
PBYTE pBuf;
|
|
ULONG cb;
|
|
SEL asel[1];
|
|
} VIOPHYSBUF;
|
|
typedef VIOPHYSBUF *PVIOPHYSBUF;
|
|
|
|
typedef struct _VIOPALSTATE
|
|
{
|
|
USHORT cb;
|
|
USHORT type;
|
|
USHORT iFirst;
|
|
USHORT acolor[1];
|
|
} VIOPALSTATE;
|
|
typedef VIOPALSTATE *PVIOPALSTATE;
|
|
|
|
typedef struct _VIOOVERSCAN
|
|
{
|
|
USHORT cb;
|
|
USHORT type;
|
|
USHORT color;
|
|
} VIOOVERSCAN;
|
|
typedef VIOOVERSCAN *PVIOOVERSCAN;
|
|
|
|
typedef struct _VIOINTENSITY
|
|
{
|
|
USHORT cb;
|
|
USHORT type;
|
|
USHORT fs;
|
|
} VIOINTENSITY;
|
|
typedef VIOINTENSITY *PVIOINTENSITY;
|
|
|
|
typedef struct _VIOCOLORREG
|
|
{
|
|
USHORT cb;
|
|
USHORT type;
|
|
USHORT firstcolorreg;
|
|
USHORT numcolorregs;
|
|
PCH colorregaddr;
|
|
} VIOCOLORREG;
|
|
typedef VIOCOLORREG *PVIOCOLORREG;
|
|
|
|
typedef struct _VIOSETULINELOC
|
|
{
|
|
USHORT cb;
|
|
USHORT type;
|
|
USHORT scanline;
|
|
} VIOSETULINELOC;
|
|
typedef VIOSETULINELOC *PVIOSETULINELOC;
|
|
|
|
typedef struct _VIOSETTARGET
|
|
{
|
|
USHORT cb;
|
|
USHORT type;
|
|
USHORT defaultalgorithm;
|
|
} VIOSETTARGET;
|
|
typedef VIOSETTARGET *PVIOSETTARGET;
|
|
|
|
typedef struct _VIOCURSORINFO
|
|
{
|
|
USHORT yStart;
|
|
USHORT cEnd;
|
|
USHORT cx;
|
|
USHORT attr;
|
|
} VIOCURSORINFO;
|
|
typedef VIOCURSORINFO *PVIOCURSORINFO;
|
|
|
|
typedef struct _VIOFONTINFO
|
|
{
|
|
USHORT cb;
|
|
USHORT type;
|
|
USHORT cxCell;
|
|
USHORT cyCell;
|
|
ULONG pbData; /* PVOID16 / _far16ptr */
|
|
USHORT cbData;
|
|
} VIOFONTINFO;
|
|
typedef VIOFONTINFO *PVIOFONTINFO;
|
|
|
|
|
|
USHORT VioCheckCharType (PUSHORT pType, USHORT usRow, USHORT usColumn,
|
|
HVIO hvio);
|
|
USHORT VioDeRegister (VOID);
|
|
USHORT VioEndPopUp (HVIO hvio);
|
|
USHORT VioGetAnsi (PUSHORT pfAnsi, HVIO hvio);
|
|
USHORT VioGetBuf (PULONG pLVB, PUSHORT pcbLVB, HVIO hvio);
|
|
USHORT VioGetConfig (USHORT usConfigId, PVIOCONFIGINFO pvioin, HVIO hvio);
|
|
USHORT VioGetCp (USHORT usReserved, PUSHORT pusCodePage, HVIO hvio);
|
|
USHORT VioGetCurPos (PUSHORT pusRow, PUSHORT pusColumn, HVIO hvio);
|
|
USHORT VioGetCurType (PVIOCURSORINFO pvioCursorInfo, HVIO hvio);
|
|
USHORT VioGetFont (PVIOFONTINFO pviofi, HVIO hvio);
|
|
USHORT VioGetMode (PVIOMODEINFO pvioModeInfo, HVIO hvio);
|
|
USHORT VioGetPhysBuf (PVIOPHYSBUF pvioPhysBuf, USHORT usReserved);
|
|
USHORT VioGetState (PVOID pState, HVIO hvio);
|
|
USHORT VioGlobalReg (PCSZ pszModName, PCSZ pszEntryName, ULONG ulFunMask1,
|
|
ULONG ulFunMask2, USHORT usReturn);
|
|
USHORT VioModeUndo (USHORT usOwnerInd, USHORT usKillInd, USHORT usReserved);
|
|
USHORT VioModeWait (USHORT usReqType, PUSHORT pNotifyType, USHORT usReserved);
|
|
USHORT VioPopUp (PUSHORT pfWait, HVIO hvio);
|
|
USHORT VioPrtSc (HVIO hvio);
|
|
USHORT VioPrtScToggle (HVIO hvio);
|
|
USHORT VioReadCellStr (PCH pchCellStr, PUSHORT pcb, USHORT usRow,
|
|
USHORT usColumn, HVIO hvio);
|
|
USHORT VioReadCharStr (PCH pch, PUSHORT pcb, USHORT usRow, USHORT usColumn,
|
|
HVIO hvio);
|
|
USHORT VioRegister (PCSZ pszModName, PCSZ pszEntryName, ULONG ulFunMask1,
|
|
ULONG ulFunMask2);
|
|
USHORT VioSavRedrawUndo (USHORT usOwnerInd, USHORT usKillInd,
|
|
USHORT usReserved);
|
|
USHORT VioSavRedrawWait (USHORT usRedrawInd, PUSHORT pusNotifyType,
|
|
USHORT usReserved);
|
|
USHORT VioScrLock (USHORT fWait, PUCHAR pfNotLocked, HVIO hvio);
|
|
USHORT VioScrollDn (USHORT usTopRow, USHORT usLeftCol, USHORT usBotRow,
|
|
USHORT usRightCol, USHORT cbLines, PBYTE pCell, HVIO hvio);
|
|
USHORT VioScrollLf (USHORT usTopRow, USHORT usLeftCol, USHORT usBotRow,
|
|
USHORT usRightCol, USHORT cbCol, PBYTE pCell, HVIO hvio);
|
|
USHORT VioScrollRt (USHORT usTopRow, USHORT usLeftCol, USHORT usBotRow,
|
|
USHORT usRightCol, USHORT cbCol, PBYTE pCell, HVIO hvio);
|
|
USHORT VioScrollUp (USHORT usTopRow, USHORT usLeftCol, USHORT usBotRow,
|
|
USHORT usRightCol, USHORT cbLines, PBYTE pCell, HVIO hvio);
|
|
USHORT VioScrUnLock (HVIO hvio);
|
|
USHORT VioSetAnsi (USHORT fAnsi, HVIO hvio);
|
|
USHORT VioSetCp (USHORT usReserved, USHORT usCodePage, HVIO hvio);
|
|
USHORT VioSetCurPos (USHORT usRow, USHORT usColumn, HVIO hvio);
|
|
USHORT VioSetCurType (PVIOCURSORINFO pvioCursorInfo, HVIO hvio);
|
|
USHORT VioSetFont (PVIOFONTINFO pviofi, HVIO hvio);
|
|
USHORT VioSetMode (PVIOMODEINFO pvioModeInfo, HVIO hvio);
|
|
USHORT VioSetState (CPVOID pState, HVIO hvio);
|
|
USHORT VioShowBuf (USHORT offLVB, USHORT cb, HVIO hvio);
|
|
USHORT VioWrtCellStr (PCCH pchCellStr, USHORT cb, USHORT usRow,
|
|
USHORT usColumn, HVIO hvio);
|
|
USHORT VioWrtCharStr (PCCH pch, USHORT cb, USHORT usRow, USHORT usColumn,
|
|
HVIO hvio);
|
|
USHORT VioWrtCharStrAtt (PCCH pch, USHORT cb, USHORT usRow, USHORT usColumn,
|
|
PBYTE pAttr, HVIO hvio);
|
|
USHORT VioWrtNAttr (__const__ BYTE *pAttr, USHORT cb, USHORT usRow,
|
|
USHORT usColumn, HVIO hvio);
|
|
USHORT VioWrtNCell (__const__ BYTE *pCell, USHORT cb, USHORT usRow,
|
|
USHORT usColumn, HVIO hvio);
|
|
USHORT VioWrtNChar (PCCH pch, USHORT cb, USHORT usRow, USHORT usColumn,
|
|
HVIO hvio);
|
|
USHORT VioWrtTTY (PCCH pch, USHORT cb, HVIO hvio);
|
|
|
|
#endif /* INCL_VIO */
|
|
|
|
#if defined (INCL_MOU)
|
|
|
|
#define MHK_BUTTON1 0x0001
|
|
#define MHK_BUTTON2 0x0002
|
|
#define MHK_BUTTON3 0x0004
|
|
|
|
#define MOU_NOWAIT 0x0000
|
|
#define MOU_WAIT 0x0001
|
|
|
|
#define MOUSE_MOTION 0x0001
|
|
#define MOUSE_MOTION_WITH_BN1_DOWN 0x0002
|
|
#define MOUSE_BN1_DOWN 0x0004
|
|
#define MOUSE_MOTION_WITH_BN2_DOWN 0x0008
|
|
#define MOUSE_BN2_DOWN 0x0010
|
|
#define MOUSE_MOTION_WITH_BN3_DOWN 0x0020
|
|
#define MOUSE_BN3_DOWN 0x0040
|
|
|
|
#define MOUSE_QUEUEBUSY 0x0001
|
|
#define MOUSE_BLOCKREAD 0x0002
|
|
#define MOUSE_FLUSH 0x0004
|
|
#define MOUSE_UNSUPPORTED_MODE 0x0008
|
|
#define MOUSE_DISABLED 0x0100
|
|
#define MOUSE_MICKEYS 0x0200
|
|
|
|
#define MOU_NODRAW 0x0001
|
|
#define MOU_DRAW 0x0000
|
|
#define MOU_MICKEYS 0x0002
|
|
#define MOU_PELS 0x0000
|
|
|
|
#define MR_MOUGETNUMBUTTONS 0x00000001
|
|
#define MR_MOUGETNUMMICKEYS 0x00000002
|
|
#define MR_MOUGETDEVSTATUS 0x00000004
|
|
#define MR_MOUGETNUMQUEEL 0x00000008
|
|
#define MR_MOUREADEVENTQUE 0x00000010
|
|
#define MR_MOUGETSCALEFACT 0x00000020
|
|
#define MR_MOUGETEVENTMASK 0x00000040
|
|
#define MR_MOUSETSCALEFACT 0x00000080
|
|
#define MR_MOUSETEVENTMASK 0x00000100
|
|
#define MR_MOUOPEN 0x00000800
|
|
#define MR_MOUCLOSE 0x00001000
|
|
#define MR_MOUGETPTRSHAPE 0x00002000
|
|
#define MR_MOUSETPTRSHAPE 0x00004000
|
|
#define MR_MOUDRAWPTR 0x00008000
|
|
#define MR_MOUREMOVEPTR 0x00010000
|
|
#define MR_MOUGETPTRPOS 0x00020000
|
|
#define MR_MOUSETPTRPOS 0x00040000
|
|
#define MR_MOUINITREAL 0x00080000
|
|
#define MR_MOUSETDEVSTATUS 0x00100000
|
|
|
|
|
|
typedef USHORT HMOU;
|
|
typedef HMOU *PHMOU;
|
|
|
|
|
|
typedef struct _MOUEVENTINFO
|
|
{
|
|
USHORT fs;
|
|
ULONG time;
|
|
SHORT row;
|
|
SHORT col;
|
|
} MOUEVENTINFO;
|
|
typedef MOUEVENTINFO *PMOUEVENTINFO;
|
|
|
|
typedef struct _MOUQUEINFO
|
|
{
|
|
USHORT cEvents;
|
|
USHORT cmaxEvents;
|
|
} MOUQUEINFO;
|
|
typedef MOUQUEINFO *PMOUQUEINFO;
|
|
|
|
typedef struct _PTRLOC
|
|
{
|
|
USHORT row;
|
|
USHORT col;
|
|
} PTRLOC;
|
|
typedef PTRLOC *PPTRLOC;
|
|
|
|
typedef struct _NOPTRRECT
|
|
{
|
|
USHORT row;
|
|
USHORT col;
|
|
USHORT cRow;
|
|
USHORT cCol;
|
|
} NOPTRRECT;
|
|
typedef NOPTRRECT *PNOPTRRECT;
|
|
|
|
typedef struct _PTRSHAPE
|
|
{
|
|
USHORT cb;
|
|
USHORT col;
|
|
USHORT row;
|
|
USHORT colHot;
|
|
USHORT rowHot;
|
|
} PTRSHAPE;
|
|
typedef PTRSHAPE *PPTRSHAPE;
|
|
|
|
typedef struct _SCALEFACT
|
|
{
|
|
USHORT rowScale;
|
|
USHORT colScale;
|
|
} SCALEFACT;
|
|
typedef SCALEFACT *PSCALEFACT;
|
|
|
|
typedef struct _THRESHOLD
|
|
{
|
|
USHORT Length;
|
|
USHORT Level1;
|
|
USHORT Lev1Mult;
|
|
USHORT Level2;
|
|
USHORT lev2Mult;
|
|
} THRESHOLD;
|
|
typedef THRESHOLD *PTHRESHOLD;
|
|
|
|
|
|
USHORT MouClose (HMOU hmou);
|
|
USHORT MouDeRegister (VOID);
|
|
USHORT MouDrawPtr (HMOU hmou);
|
|
USHORT MouFlushQue (HMOU hmou);
|
|
USHORT MouGetDevStatus (PUSHORT pfsDevStatus, HMOU hmou);
|
|
USHORT MouGetEventMask (PUSHORT pfsEvents, HMOU hmou);
|
|
USHORT MouGetNumButtons (PUSHORT pcButtons, HMOU hmou);
|
|
USHORT MouGetNumMickeys (PUSHORT pcMickeys, HMOU hmou);
|
|
USHORT MouGetNumQueEl (PMOUQUEINFO qmouqi, HMOU hmou);
|
|
USHORT MouGetPtrPos (PPTRLOC pmouLoc, HMOU hmou);
|
|
USHORT MouGetPtrShape (PBYTE pBuf, PPTRSHAPE pmoupsInfo, HMOU hmou);
|
|
USHORT MouGetScaleFact (PSCALEFACT pmouscFactors, HMOU hmou);
|
|
USHORT MouGetThreshold (PTHRESHOLD pthreshold, HMOU hmou);
|
|
USHORT MouInitReal (PCSZ pszDriverName);
|
|
USHORT MouOpen (PCSZ pszDvrName, PHMOU phmou);
|
|
USHORT MouReadEventQue (PMOUEVENTINFO pmouevEvent, PUSHORT pfWait, HMOU hmou);
|
|
USHORT MouRegister (PCSZ pszModName, PCSZ pszEntryName, ULONG ulFunMask);
|
|
USHORT MouRemovePtr (PNOPTRRECT pmourtRect, HMOU hmou);
|
|
USHORT MouSetDevStatus (PUSHORT pfsDevStatus, HMOU hmou);
|
|
USHORT MouSetEventMask (PUSHORT pfsEvents, HMOU hmou);
|
|
USHORT MouSetPtrPos (PPTRLOC pmouLoc, HMOU hmou);
|
|
USHORT MouSetPtrShape (PBYTE pBuf, PPTRSHAPE pmoupsInfo, HMOU hmou);
|
|
USHORT MouSetScaleFact (PSCALEFACT pmouscFactors, HMOU hmou);
|
|
USHORT MouSetThreshold (PTHRESHOLD pthreshold, HMOU hmou);
|
|
USHORT MouSynch (USHORT fWait);
|
|
|
|
#endif /* INCL_MOU */
|
|
|
|
/* ------------------------------ THE END --------------------------------- */
|
|
|
|
#pragma pack(4)
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif /* __cplusplus */
|
|
|
|
#endif /* not _OS2EMX_H */
|
|
|
|
/* Note 1:
|
|
|
|
There are some inconsistencies in the structure names defined in
|
|
the header files of the IBM Developer's Toolkit for OS/2. To make
|
|
C++ modules compiled with those headers linkable with C++ modules
|
|
compiled with this header, we have to use the same (questionable)
|
|
structure names. */
|
|
|
|
/*
|
|
* Local variables:
|
|
* indent-tabs-mode: t
|
|
* end:
|
|
*/
|
|
|