home *** CD-ROM | disk | FTP | other *** search
/ PC World 2000 August / PCWorld_2000-08_cd.bin / Software / TemaCD / xbasic / xbpro.exe / xb / xst.dec < prev    next >
Text File  |  2000-01-12  |  47KB  |  1,007 lines

  1. '
  2. ' **********************************************
  3. ' *****  Standard Library COMPOSITE TYPES  *****
  4. ' **********************************************
  5. '
  6. TYPE FILEINFO
  7.   XLONG        .attributes
  8.   XLONG        .createTimeLow
  9.   XLONG        .createTimeHigh
  10.   XLONG        .accessTimeLow
  11.   XLONG        .accessTimeHigh
  12.   XLONG        .modifyTimeLow
  13.   XLONG        .modifyTimeHigh
  14.   XLONG        .sizeHigh
  15.   XLONG        .sizeLow
  16.   XLONG        .res0
  17.   XLONG        .res1
  18.   STRING*260   .name
  19.   STRING*14    .alternateName
  20. END TYPE
  21. '
  22. TYPE MEMORYMAP
  23.   XLONG        .code0
  24.   XLONG        .code
  25.   XLONG        .codex
  26.   XLONG        .codez
  27.   XLONG        .data0
  28.   XLONG        .data
  29.   XLONG        .datax
  30.   XLONG        .dataz
  31.   XLONG        .bss0
  32.   XLONG        .bss
  33.   XLONG        .bssx
  34.   XLONG        .bssz
  35.   XLONG        .dyno0
  36.   XLONG        .dyno
  37.   XLONG        .dynox
  38.   XLONG        .dynoz
  39.   XLONG        .ucode0
  40.   XLONG        .ucode
  41.   XLONG        .ucodex
  42.   XLONG        .ucodez
  43.   XLONG        .stack0
  44.   XLONG        .stack
  45.   XLONG        .stackx
  46.   XLONG        .stackz
  47. END TYPE
  48. '
  49. '
  50. ' ****************************************
  51. ' *****  Standard Library Functions  *****
  52. ' ****************************************
  53. '
  54. ' System Functions
  55. '
  56. EXTERNAL FUNCTION  Xst                            ()
  57. EXTERNAL FUNCTION  XstVersion$                    ()
  58. EXTERNAL FUNCTION  XstCauseException              (exception)
  59. EXTERNAL FUNCTION  XstDateAndTimeToFileTime       (year, month, day, weekDay, hour, minute, second, nanos, @filetime$$)
  60. EXTERNAL FUNCTION  XstErrorNameToNumber           (error$, @error)
  61. EXTERNAL FUNCTION  XstErrorNumberToName           (error, @error$)
  62. EXTERNAL FUNCTION  XstExceptionNumberToName       (exception, @exception$)
  63. EXTERNAL FUNCTION  XstExceptionToSystemException  (exception, @sysException)
  64. EXTERNAL FUNCTION  XstFileTimeToDateAndTime       (fileTime$$, @year, @month, @day, @weekDay, @hour, @minute, @second, @nanos)
  65. EXTERNAL FUNCTION  XstFileToSystemFile            (fileNumber, @systemFileNumber)
  66. EXTERNAL FUNCTION  XstGetApplicationEnvironment   (@standalone, @reserved)
  67. EXTERNAL FUNCTION  XstGetCommandLine              (@commandline$)
  68. EXTERNAL FUNCTION  XstGetCommandLineArguments     (@argc, @argv$[])
  69. EXTERNAL FUNCTION  XstGetConsoleGrid              (@grid)
  70. EXTERNAL FUNCTION  XstGetCPUName                  (@cpu$)
  71. EXTERNAL FUNCTION  XstGetDateAndTime              (@year, @month, @day, @weekDay, @hour, @minute, @second, @nanos)
  72. EXTERNAL FUNCTION  XstGetEndian                   (@endian$$)
  73. EXTERNAL FUNCTION  XstGetEndianName               (@endian$)
  74. EXTERNAL FUNCTION  XstGetEnvironmentVariable      (@name$, @value$)
  75. EXTERNAL FUNCTION  XstGetEnvironmentVariables     (@count, @envp$[])
  76. EXTERNAL FUNCTION  XstGetException                (@exception)
  77. EXTERNAL FUNCTION  XstGetExceptionFunction        (@function)
  78. EXTERNAL FUNCTION  XstGetImplementation           (@name$)
  79. EXTERNAL FUNCTION  XstGetMemoryMap                (MEMORYMAP @memorymap)
  80. EXTERNAL FUNCTION  XstGetNewline                  (@save, @paste)
  81. EXTERNAL FUNCTION  XstGetOSName                   (@name$)
  82. EXTERNAL FUNCTION  XstGetOSVersion                (@major, @minor)
  83. EXTERNAL FUNCTION  XstGetOSVersionName            (@name$)
  84. EXTERNAL FUNCTION  XstGetPrintTab                 (@pixels)
  85. EXTERNAL FUNCTION  XstGetProgramName              (@program$)
  86. EXTERNAL FUNCTION  XstGetSystemError              (@sysError)
  87. EXTERNAL FUNCTION  XstGetSystemTime               (@msec)
  88. EXTERNAL FUNCTION  XstKillTimer                   (timer)
  89. EXTERNAL FUNCTION  XstLog                         (message$)
  90. EXTERNAL FUNCTION  XstSetCommandLineArguments     (argc, @argv$[])
  91. EXTERNAL FUNCTION  XstSetDateAndTime              (year, month, day, weekDay, hour, minute, second, nanos)
  92. EXTERNAL FUNCTION  XstSetEnvironmentVariable      (@name$, @value$)
  93. EXTERNAL FUNCTION  XstSetException                (exception)
  94. EXTERNAL FUNCTION  XstSetExceptionFunction        (function)
  95. EXTERNAL FUNCTION  XstSetNewline                  (save, paste)
  96. EXTERNAL FUNCTION  XstSetPrintTab                 (pixels)
  97. EXTERNAL FUNCTION  XstSetProgramName              (@program$)
  98. EXTERNAL FUNCTION  XstSetSystemError              (sysError)
  99. EXTERNAL FUNCTION  XstSleep                       (milliSec)
  100. EXTERNAL FUNCTION  XstStartTimer                  (timer, count, msec, callFunc)
  101. EXTERNAL FUNCTION  XstSystemErrorToError          (sysError, @error)
  102. EXTERNAL FUNCTION  XstSystemErrorNumberToName     (sysError, @sysError$)
  103. EXTERNAL FUNCTION  XstSystemExceptionNumberToName (sysException, @sysException$)
  104. EXTERNAL FUNCTION  XstSystemExceptionToException  (sysException, @exception)
  105. '
  106. ' File Functions
  107. '
  108. EXTERNAL FUNCTION  XstBinRead                     (fileNumber, bufferAddr, maxBytes)
  109. EXTERNAL FUNCTION  XstBinWrite                    (fileNumber, bufferAddr, numBytes)
  110. EXTERNAL FUNCTION  XstChangeDirectory             (directory$)
  111. EXTERNAL FUNCTION  XstCopyDirectory               (source$, dest$)
  112. EXTERNAL FUNCTION  XstCopyFile                    (source$, dest$)
  113. EXTERNAL FUNCTION  XstDecomposePathname           (pathname$, path$, parent$, filename$, file$, extent$)
  114. EXTERNAL FUNCTION  XstDeleteFile                  (file$)
  115. EXTERNAL FUNCTION  XstFindFile                    (file$, @path$[], @path$, @attr)
  116. EXTERNAL FUNCTION  XstGetCurrentDirectory         (@directory$)
  117. EXTERNAL FUNCTION  XstGetDrives                   (@count, @drive$[], @driveType[], @driveType$[])
  118. EXTERNAL FUNCTION  XstGetExecutionPathArray       (@path$[])
  119. EXTERNAL FUNCTION  XstGetFileAttributes           (file$, @attributes)
  120. EXTERNAL FUNCTION  XstGetFiles                    (filter$, @files$[])
  121. EXTERNAL FUNCTION  XstGetFilesAndAttributes       (filter$, attributeFilter, @files$[], FILEINFO @fileInfo[])
  122. EXTERNAL FUNCTION  XstGetPathComponents           (file$, @path$, @drive$, @dir$, @filename$, @attributes)
  123. EXTERNAL FUNCTION  XstGuessFilename               (old$, new$, @guess$, @attributes)
  124. EXTERNAL FUNCTION  XstLoadString                  (file$, @text$)
  125. EXTERNAL FUNCTION  XstLoadStringArray             (file$, @text$[])
  126. EXTERNAL FUNCTION  XstLockFileSection             (fileNumber, mode, offset$$, length$$)
  127. EXTERNAL FUNCTION  XstMakeDirectory               (directory$)
  128. EXTERNAL FUNCTION  XstPathString$                 (path$)
  129. EXTERNAL FUNCTION  XstPathToAbsolutePath          (ipath$, @opath$)
  130. EXTERNAL FUNCTION  XstRenameFile                  (old$, new$)
  131. EXTERNAL FUNCTION  XstSaveString                  (file$, text$)
  132. EXTERNAL FUNCTION  XstSaveStringArray             (file$, text$[])
  133. EXTERNAL FUNCTION  XstSaveStringArrayCRLF         (file$, text$[])
  134. EXTERNAL FUNCTION  XstSetCurrentDirectory         (directory$)
  135. EXTERNAL FUNCTION  XstUnlockFileSection           (fileNumber, mode, offset$$, length$$)
  136. '
  137. ' String, String Array, and Array Functions
  138. '
  139. EXTERNAL FUNCTION  XstBackArrayToBinArray         (backArray$[], @binArray$[])
  140. EXTERNAL FUNCTION  XstBackStringToBinString$      (backString$)
  141. EXTERNAL FUNCTION  XstBinArrayToBackArray         (binArray$[], @backArray$[])
  142. EXTERNAL FUNCTION  XstBinStringToBackString$      (binString$)
  143. EXTERNAL FUNCTION  XstBinStringToBackStringNL$    (binString$)
  144. EXTERNAL FUNCTION  XstCopyArray                   (ANY[], ANY[])
  145. EXTERNAL FUNCTION  XstCopyMemory                  (sourceAddr, destAddr, bytes)
  146. EXTERNAL FUNCTION  XstDeleteLines                 (array$[], start, count)
  147. EXTERNAL FUNCTION  XstFindArray                   (mode, text$[], find$, @line, @pos, @match)
  148. EXTERNAL FUNCTION  XstGetTypedArray               (type, bytes, @array[])
  149. EXTERNAL FUNCTION  XstMergeStrings$               (string$, add$, start, replace)
  150. EXTERNAL FUNCTION  XstMultiStringToStringArray    (s$, @s$[])
  151. EXTERNAL FUNCTION  XstNextCField$                 (sourceAddr, @index, @done)
  152. EXTERNAL FUNCTION  XstNextCLine$                  (sourceAddr, @index, @done)
  153. EXTERNAL FUNCTION  XstNextField$                  (source$, @index, @done)
  154. EXTERNAL FUNCTION  XstNextItem$                   (source$, @index, @term, @done)
  155. EXTERNAL FUNCTION  XstNextLine$                   (source$, @index, @done)
  156. EXTERNAL FUNCTION  XstReplaceArray                (mode, text$[], find$, replace$, line, pos, match)
  157. EXTERNAL FUNCTION  XstReplaceLines                (d$[], s$[], firstD, countD, firstS, countS)
  158. EXTERNAL FUNCTION  XstStringArraySectionToString  (text$[], @copy$, x1, y1, x2, y2, term)
  159. EXTERNAL FUNCTION  XstStringArraySectionToStringArray (text$[], @copy$[], x1, y1, x2, y2)
  160. EXTERNAL FUNCTION  XstStringArrayToString         (s$[], @s$)
  161. EXTERNAL FUNCTION  XstStringArrayToStringCRLF     (s$[], @s$)
  162. EXTERNAL FUNCTION  XstStringToStringArray         (s$, @s$[])
  163. EXTERNAL FUNCTION  XstStringToNumber             (s$, startOff, afterOff, rtype, value$$)
  164. EXTERNAL FUNCTION  XstFindMemoryMatch            (addrStart, addrAfter, addrMatch, minLength, maxLength)
  165. EXTERNAL FUNCTION  XstLTRIM                       (@string$, array[])
  166. EXTERNAL FUNCTION  XstRTRIM                       (@string$, array[])
  167. EXTERNAL FUNCTION  XstTRIM                        (@string$, array[])
  168. '
  169. ' Sorting Functions
  170. '
  171. EXTERNAL FUNCTION  XstCompareStrings              (addrString1, op, addrString2, flags)
  172. EXTERNAL FUNCTION  XstQuickSort                   (ANY x[], n[], low, high, flags)
  173. EXTERNAL FUNCTION  XxxFormat$                     (format$, argType, arg$$)
  174. '
  175. '
  176. ' ****************************************
  177. ' *****  Standard Library Constants  *****
  178. ' ****************************************
  179. '
  180. ' Line Separator argument in XstStringArraySectionToString()
  181. '
  182.   $$NOTERM              =  0        ' no line terminator
  183.   $$LF                  =  1        ' \n
  184.   $$NL                  =  1        ' \n
  185.   $$CRLF                =  2        ' \r\n
  186. '
  187. ' for XstGetNewline() and XstSetNewline()
  188. '
  189.   $$NewlineLF           =  1
  190.   $$NewlineNL           =  1
  191.   $$NewlineCRLF         =  2
  192.   $$NewlineDefault      =  1
  193.   $$Newline$            =  "\n"
  194. '
  195. ' path slash characters (different for DOS/Windows vs UNIX)
  196. '
  197.   $$PathSlash$          = "\\"      ' Windows
  198.   $$PathSlash           = '\\'      ' Windows
  199. ' $$PathSlash$          = "/"       ' UNIX
  200. ' $$PathSlash           = '/'       ' UNIX
  201. '
  202. ' Drive types returned by XstGetDrives (@count, @drive$[], @driveType[], @driveType$[])
  203. '
  204.   $$DriveTypeUnknown    =  0        ' "Unknown"
  205.   $$DriveTypeDamaged    =  1        ' "Damaged"
  206.   $$DriveTypeRemovable  =  2        ' "Removable"
  207.   $$DriveTypeFixed      =  3        ' "Fixed"
  208.   $$DriveTypeRemote     =  4        ' "Remote"
  209.   $$DriveTypeCDROM      =  5        ' "CDROM"
  210.   $$DriveTypeRamDisk    =  6        ' "RamDisk"
  211. '
  212. '  File Attributes returned by XstGetFileAttributes (filename$, @attributes)
  213. '
  214.   $$FileNonexistent     = 0x0000
  215.   $$FileNotFound        = 0x0000
  216.   $$FileReadOnly        = 0x0001
  217.   $$FileHidden          = 0x0002
  218.   $$FileSystem          = 0x0004
  219.   $$FileDirectory       = 0x0010
  220.   $$FileArchive         = 0x0020
  221.   $$FileNormal          = 0x0080    ' no other bits should be set
  222.   $$FileTemporary       = 0x0100
  223.   $$FileAtomicWrite     = 0x0200
  224.   $$FileExecutable      = 0x1000
  225. '
  226. ' mode in XstFindArray()
  227. '
  228.   $$FindForward         = 0x00
  229.   $$FindReverse         = 0x01
  230.   $$FindDirection       = 0x01
  231.   $$FindCaseSensitive   = 0x00
  232.   $$FindCaseInsensitive = 0x02
  233.   $$FindCaseSensitivity = 0x02
  234. '
  235. ' ****************************
  236. ' *****  Sort Constants  *****  OR sort flags together
  237. ' ****************************
  238. '
  239.   $$SortIncreasing      = 0x00      ' "a to z"
  240.   $$SortDecreasing      = 0x01      ' "z to a"
  241.   $$SortCaseSensitive   = 0x00      ' "A" < "a"
  242.   $$SortCaseInsensitive = 0x02      ' "A" = "a"
  243.   $$SortAlphabetic      = 0x00      ' "a3b" > "a11c"
  244.   $$SortAlphaNumeric    = 0x04      ' "a3b" < "a11c"
  245. '
  246. ' for XstCompareStrings()
  247. '
  248.   $$EQ                  = 0x02
  249.   $$NE                  = 0x03
  250.   $$LT                  = 0x04
  251.   $$LE                  = 0x05
  252.   $$GE                  = 0x06
  253.   $$GT                  = 0x07
  254. '
  255. '
  256. ' ********************************
  257. ' *****  File I/O Constants  *****  for OPEN()
  258. ' ********************************
  259. '
  260.   $$RD                  = 0x0000    ' read file
  261.   $$WR                  = 0x0001    ' write file
  262.   $$RW                  = 0x0002    ' read/write file
  263.   $$WRNEW               = 0x0003    ' write new file
  264.   $$RWNEW               = 0x0004    ' read/write new file
  265.   $$NOSHARE             = 0x0000    ' share file for none
  266.   $$RDSHARE             = 0x0010    ' share file for read
  267.   $$WRSHARE             = 0x0020    ' share file for write
  268.   $$RWSHARE             = 0x0030    ' share file for read & write
  269.   $$ALL                 = -1        ' CLOSE ($$ALL)
  270. '
  271. ' ********************************
  272. ' *****  Language Constants  *****  I/O, Kinds, DataTypes, Scope, etc...
  273. ' ********************************
  274. '
  275.   $$ZERO                =  0
  276.   $$ONE                 =  1
  277.   $$ENDIAN              =  0
  278.   $$STDIN               =  0
  279.   $$STDOUT              =  1
  280.   $$STDERR              =  2
  281.   $$VOID                =  1
  282.   $$SBYTE               =  2
  283.   $$UBYTE               =  3
  284.   $$SSHORT              =  4
  285.   $$USHORT              =  5
  286.   $$SLONG               =  6
  287.   $$ULONG               =  7
  288.   $$XLONG               =  8
  289.   $$GOADDR              =  9
  290.   $$SUBADDR             = 10
  291.   $$FUNCADDR            = 11
  292.   $$GIANT               = 12
  293.   $$SINGLE              = 13
  294.   $$DOUBLE              = 14
  295.   $$ARRAY               = 16
  296.   $$ANY                 = 16
  297.   $$ETC                 = 17
  298.   $$VARARG              = 18
  299.   $$STRING              = 19
  300.   $$COMPOSITE           = 31
  301.   $$SCOMPLEX            = 32
  302.   $$DCOMPLEX            = 33
  303.   $$AUTO                =  0
  304.   $$AUTOX               =  1
  305.   $$STATIC              =  2
  306.   $$SHARED              =  3
  307.   $$EXTERNAL            =  4
  308.   $$ARGUMENT            =  7
  309. '
  310. '
  311. ' **********************************
  312. ' *****  Native Error Numbers  *****
  313. ' **********************************
  314. '
  315. ' "Native Error Numbers" are USHORT values composed of two parts:
  316. '    1. ErrorObject in upper byte - object associated with error
  317. '    2. ErrorNature in lower byte - nature of action or error
  318. '
  319.   $$ErrorObjectNone                =  0    ' or unknown
  320.   $$ErrorObjectData                =  1
  321.   $$ErrorObjectDisk                =  2
  322.   $$ErrorObjectFile                =  3
  323.   $$ErrorObjectFont                =  4
  324.   $$ErrorObjectGrid                =  5
  325.   $$ErrorObjectIcon                =  6
  326.   $$ErrorObjectName                =  7
  327.   $$ErrorObjectNode                =  8
  328.   $$ErrorObjectPipe                =  9
  329.   $$ErrorObjectUser                = 10
  330.   $$ErrorObjectArray               = 11
  331.   $$ErrorObjectImage               = 12
  332.   $$ErrorObjectMedia               = 13
  333.   $$ErrorObjectQueue               = 14
  334.   $$ErrorObjectStack               = 15
  335.   $$ErrorObjectTimer               = 16
  336.   $$ErrorObjectBuffer              = 17
  337.   $$ErrorObjectCursor              = 18
  338.   $$ErrorObjectDevice              = 19
  339.   $$ErrorObjectDriver              = 20
  340.   $$ErrorObjectMemory              = 21
  341.   $$ErrorObjectSocket              = 22
  342.   $$ErrorObjectString              = 23
  343.   $$ErrorObjectSystem              = 24
  344.   $$ErrorObjectThread              = 25
  345.   $$ErrorObjectWindow              = 26
  346.   $$ErrorObjectCommand             = 27
  347.   $$ErrorObjectDisplay             = 28
  348.   $$ErrorObjectLibrary             = 29
  349.   $$ErrorObjectMessage             = 30
  350.   $$ErrorObjectNetwork             = 31
  351.   $$ErrorObjectPrinter             = 32
  352.   $$ErrorObjectProcess             = 33
  353.   $$ErrorObjectProgram             = 34
  354.   $$ErrorObjectArgument            = 35
  355.   $$ErrorObjectComputer            = 36
  356.   $$ErrorObjectFunction            = 37
  357.   $$ErrorObjectIdentity            = 38
  358.   $$ErrorObjectPassword            = 39
  359.   $$ErrorObjectClipboard           = 40
  360.   $$ErrorObjectDirectory           = 41
  361.   $$ErrorObjectSemaphore           = 42
  362.   $$ErrorObjectStatement           = 43
  363.   $$ErrorObjectSystemRoutine       = 44
  364.   $$ErrorObjectSystemFunction      = 45
  365.   $$ErrorObjectSystemResource      = 46
  366.   $$ErrorObjectOperatingSystem     = 47
  367.   $$ErrorObjectIntegerLogicUnit    = 48
  368.   $$ErrorObjectFloatingPointUnit   = 49
  369. '
  370.   $$ErrorNatureNone                =  0
  371.   $$ErrorNatureBusy                =  1
  372.   $$ErrorNatureFull                =  2
  373.   $$ErrorNatureError               =  3
  374.   $$ErrorNatureEmpty               =  4
  375.   $$ErrorNatureReset               =  5
  376.   $$ErrorNatureExists              =  6
  377.   $$ErrorNatureFailed              =  7
  378.   $$ErrorNatureHalted              =  8
  379.   $$ErrorNatureExpired             =  9
  380.   $$ErrorNatureInvalid             = 10
  381.   $$ErrorNatureMissing             = 11
  382.   $$ErrorNatureTimeout             = 12
  383.   $$ErrorNatureTooMany             = 13
  384.   $$ErrorNatureUnknown             = 14
  385.   $$ErrorNatureBreakKey            = 15
  386.   $$ErrorNatureDeadlock            = 16
  387.   $$ErrorNatureDisabled            = 17
  388.   $$ErrorNatureNotEmpty            = 18
  389.   $$ErrorNatureObsolete            = 19
  390.   $$ErrorNatureOverflow            = 20
  391.   $$ErrorNatureTooLarge            = 21
  392.   $$ErrorNatureTooSmall            = 22
  393.   $$ErrorNatureAbandoned           = 23
  394.   $$ErrorNatureAvailable           = 24
  395.   $$ErrorNatureDuplicate           = 25
  396.   $$ErrorNatureExhausted           = 26
  397.   $$ErrorNaturePrivilege           = 27
  398.   $$ErrorNatureUndefined           = 28
  399.   $$ErrorNatureUnderflow           = 29
  400.   $$ErrorNatureAllocation          = 30
  401.   $$ErrorNatureBreakpoint          = 31
  402.   $$ErrorNatureContention          = 32
  403.   $$ErrorNaturePermission          = 33
  404.   $$ErrorNatureTerminated          = 34
  405.   $$ErrorNatureUndeclared          = 35
  406.   $$ErrorNatureUnexpected          = 36
  407.   $$ErrorNatureWouldBlock          = 37
  408.   $$ErrorNatureInterrupted         = 38
  409.   $$ErrorNatureMalfunction         = 39
  410.   $$ErrorNatureNonexistent         = 40
  411.   $$ErrorNatureUnavailable         = 41
  412.   $$ErrorNatureUnspecified         = 42
  413.   $$ErrorNatureDisconnected        = 43
  414.   $$ErrorNatureDivideByZero        = 44
  415.   $$ErrorNatureIncompatible        = 45
  416.   $$ErrorNatureNotConnected        = 46
  417.   $$ErrorNatureLimitExceeded       = 47
  418.   $$ErrorNatureNotInitialized      = 48
  419.   $$ErrorNatureHigherDimension     = 49
  420.   $$ErrorNatureLowestDimension     = 50
  421.   $$ErrorNatureCannotInitialize    = 51
  422.   $$ErrorNatureInitializeFailed    = 52
  423.   $$ErrorNatureAlreadyInitialized  = 53
  424.   $$ErrorNatureInvalidAccess       = 54
  425.   $$ErrorNatureInvalidAddress      = 55
  426.   $$ErrorNatureInvalidAlignment    = 56
  427.   $$ErrorNatureInvalidArgument     = 57
  428.   $$ErrorNatureInvalidCheck        = 58
  429.   $$ErrorNatureInvalidCoordinates  = 59
  430.   $$ErrorNatureInvalidCommand      = 60
  431.   $$ErrorNatureInvalidData         = 61
  432.   $$ErrorNatureInvalidDimension    = 62
  433.   $$ErrorNatureInvalidEntry        = 63
  434.   $$ErrorNatureInvalidFormat       = 64
  435.   $$ErrorNatureInvalidKind         = 65
  436.   $$ErrorNatureInvalidIdentity     = 66
  437.   $$ErrorNatureInvalidInstruction  = 67
  438.   $$ErrorNatureInvalidLocation     = 68
  439.   $$ErrorNatureInvalidName         = 69
  440.   $$ErrorNatureInvalidNode         = 70
  441.   $$ErrorNatureInvalidNumber       = 71
  442.   $$ErrorNatureInvalidOperand      = 72
  443.   $$ErrorNatureInvalidOperation    = 73
  444.   $$ErrorNatureInvalidReply        = 74
  445.   $$ErrorNatureInvalidRequest      = 75
  446.   $$ErrorNatureInvalidResult       = 76
  447.   $$ErrorNatureInvalidSelection    = 77
  448.   $$ErrorNatureInvalidSignature    = 78
  449.   $$ErrorNatureInvalidSize         = 79
  450.   $$ErrorNatureInvalidType         = 80
  451.   $$ErrorNatureInvalidValue        = 81
  452.   $$ErrorNatureInvalidVersion      = 82
  453. '
  454. '
  455. ' ****************************************
  456. ' *****  Native Exception Constants  *****
  457. ' ****************************************
  458. '
  459.   $$ExceptionNone                  =  0
  460.   $$ExceptionSegmentViolation      =  1
  461.   $$ExceptionOutOfBounds           =  2
  462.   $$ExceptionBreakpoint            =  3
  463.   $$ExceptionBreakKey              =  4
  464.   $$ExceptionAlignment             =  5
  465.   $$ExceptionDenormal              =  6
  466.   $$ExceptionDivideByZero          =  7
  467.   $$ExceptionInvalidOperation      =  8
  468.   $$ExceptionOverflow              =  9
  469.   $$ExceptionStackCheck            = 10
  470.   $$ExceptionUnderflow             = 11
  471.   $$ExceptionInvalidInstruction    = 12
  472.   $$ExceptionPrivilege             = 13
  473.   $$ExceptionStackOverflow         = 14
  474.   $$ExceptionReserved              = 15
  475.   $$ExceptionTimer                 = 16
  476.   $$ExceptionUnknown               = 17
  477.   $$ExceptionUpper                 = 31
  478. '
  479.   $$ExceptionTerminate             =  0    ' native
  480.   $$ExceptionContinue              = -1    ' native
  481. '
  482. '
  483. ' **********************************************  from \mstools\h\winerror.h
  484. ' *****  Operating System Error Constants  *****  XstGetSystemError() : XstSetSystemError()
  485. ' **********************************************  XstSystemErrorNumberToName (@systemError$)
  486. '
  487.   $$ERROR_SUCCESS                           =    0
  488.   $$ERROR_INVALID_FUNCTION                  =    1
  489.   $$ERROR_FILE_NOT_FOUND                    =    2
  490.   $$ERROR_PATH_NOT_FOUND                    =    3
  491.   $$ERROR_TOO_MANY_OPEN_FILES               =    4
  492.   $$ERROR_ACCESS_DENIED                     =    5
  493.   $$ERROR_INVALID_HANDLE                    =    6
  494.   $$ERROR_ARENA_TRASHED                     =    7
  495.   $$ERROR_NOT_ENOUGH_MEMORY                 =    8
  496.   $$ERROR_INVALID_BLOCK                     =    9
  497.   $$ERROR_BAD_ENVIRONMENT                   =   10
  498.   $$ERROR_BAD_FORMAT                        =   11
  499.   $$ERROR_INVALID_ACCESS                    =   12
  500.   $$ERROR_INVALID_DATA                      =   13
  501.   $$ERROR_OUTOFMEMORY                       =   14
  502.   $$ERROR_INVALID_DRIVE                     =   15
  503.   $$ERROR_CURRENT_DIRECTORY                 =   16
  504.   $$ERROR_NOT_SAME_DEVICE                   =   17
  505.   $$ERROR_NO_MORE_FILES                     =   18
  506.   $$ERROR_WRITE_PROTECT                     =   19
  507.   $$ERROR_BAD_UNIT                          =   20
  508.   $$ERROR_NOT_READY                         =   21
  509.   $$ERROR_BAD_COMMAND                       =   22
  510.   $$ERROR_CRC                               =   23
  511.   $$ERROR_BAD_LENGTH                        =   24
  512.   $$ERROR_SEEK                              =   25
  513.   $$ERROR_NOT_DOS_DISK                      =   26
  514.   $$ERROR_SECTOR_NOT_FOUND                  =   27
  515.   $$ERROR_OUT_OF_PAPER                      =   28
  516.   $$ERROR_WRITE_FAULT                       =   29
  517.   $$ERROR_READ_FAULT                        =   30
  518.   $$ERROR_GEN_FAILURE                       =   31
  519.   $$ERROR_SHARING_VIOLATION                 =   32
  520.   $$ERROR_LOCK_VIOLATION                    =   33
  521.   $$ERROR_WRONG_DISK                        =   34
  522.   $$ERROR_SHARING_BUFFER_EXCEEDED           =   36
  523.   $$ERROR_HANDLE_EOF                        =   38
  524.   $$ERROR_HANDLE_DISK_FULL                  =   39
  525.   $$ERROR_NOT_SUPPORTED                     =   50
  526.   $$ERROR_REM_NOT_LIST                      =   51
  527.   $$ERROR_DUP_NAME                          =   52
  528.   $$ERROR_BAD_NETPATH                       =   53
  529.   $$ERROR_NETWORK_BUSY                      =   54
  530.   $$ERROR_DEV_NOT_EXIST                     =   55
  531.   $$ERROR_TOO_MANY_CMDS                     =   56
  532.   $$ERROR_ADAP_HDW_ERR                      =   57
  533.   $$ERROR_BAD_NET_RESP                      =   58
  534.   $$ERROR_UNEXP_NET_ERR                     =   59
  535.   $$ERROR_BAD_REM_ADAP                      =   60
  536.   $$ERROR_PRINTQ_FULL                       =   61
  537.   $$ERROR_NO_SPOOL_SPACE                    =   62
  538.   $$ERROR_PRINT_CANCELLED                   =   63
  539.   $$ERROR_NETNAME_DELETED                   =   64
  540.   $$ERROR_NETWORK_ACCESS_DENIED             =   65
  541.   $$ERROR_BAD_DEV_TYPE                      =   66
  542.   $$ERROR_BAD_NET_NAME                      =   67
  543.   $$ERROR_TOO_MANY_NAMES                    =   68
  544.   $$ERROR_TOO_MANY_SESS                     =   69
  545.   $$ERROR_SHARING_PAUSED                    =   70
  546.   $$ERROR_REQ_NOT_ACCEP                     =   71
  547.   $$ERROR_REDIR_PAUSED                      =   72
  548.   $$ERROR_FILE_EXISTS                       =   80
  549.   $$ERROR_CANNOT_MAKE                       =   82
  550.   $$ERROR_FAIL_I24                          =   83
  551.   $$ERROR_OUT_OF_STRUCTURES                 =   84
  552.   $$ERROR_ALREADY_ASSIGNED                  =   85
  553.   $$ERROR_INVALID_PASSWORD                  =   86
  554.   $$ERROR_INVALID_PARAMETER                 =   87
  555.   $$ERROR_NET_WRITE_FAULT                   =   88
  556.   $$ERROR_NO_PROC_SLOTS                     =   89
  557.   $$ERROR_TOO_MANY_SEMAPHORES               =  100
  558.   $$ERROR_EXCL_SEM_ALREADY_OWNED            =  101
  559.   $$ERROR_SEM_IS_SET                        =  102
  560.   $$ERROR_TOO_MANY_SEM_REQUESTS             =  103
  561.   $$ERROR_INVALID_AT_INTERRUPT_TIME         =  104
  562.   $$ERROR_SEM_OWNER_DIED                    =  105
  563.   $$ERROR_SEM_USER_LIMIT                    =  106
  564.   $$ERROR_DISK_CHANGE                       =  107
  565.   $$ERROR_DRIVE_LOCKED                      =  108
  566.   $$ERROR_BROKEN_PIPE                       =  109
  567.   $$ERROR_OPEN_FAILED                       =  110
  568.   $$ERROR_BUFFER_OVERFLOW                   =  111
  569.   $$ERROR_DISK_FULL                         =  112
  570.   $$ERROR_NO_MORE_SEARCH_HANDLES            =  113
  571.   $$ERROR_INVALID_TARGET_HANDLE             =  114
  572.   $$ERROR_INVALID_CATEGORY                  =  117
  573.   $$ERROR_INVALID_VERIFY_SWITCH             =  118
  574.   $$ERROR_BAD_DRIVER_LEVEL                  =  119
  575.   $$ERROR_CALL_NOT_IMPLEMENTED              =  120
  576.   $$ERROR_SEM_TIMEOUT                       =  121
  577.   $$ERROR_INSUFFICIENT_BUFFER               =  122
  578.   $$ERROR_INVALID_NAME                      =  123
  579.   $$ERROR_INVALID_LEVEL                     =  124
  580.   $$ERROR_NO_VOLUME_LABEL                   =  125
  581.   $$ERROR_MOD_NOT_FOUND                     =  126
  582.   $$ERROR_PROC_NOT_FOUND                    =  127
  583.   $$ERROR_WAIT_NO_CHILDREN                  =  128
  584.   $$ERROR_CHILD_NOT_COMPLETE                =  129
  585.   $$ERROR_DIRECT_ACCESS_HANDLE              =  130
  586.   $$ERROR_NEGATIVE_SEEK                     =  131
  587.   $$ERROR_SEEK_ON_DEVICE                    =  132
  588.   $$ERROR_IS_JOIN_TARGET                    =  133
  589.   $$ERROR_IS_JOINED                         =  134
  590.   $$ERROR_IS_SUBSTED                        =  135
  591.   $$ERROR_NOT_JOINED                        =  136
  592.   $$ERROR_NOT_SUBSTED                       =  137
  593.   $$ERROR_JOIN_TO_JOIN                      =  138
  594.   $$ERROR_SUBST_TO_SUBST                    =  139
  595.   $$ERROR_JOIN_TO_SUBST                     =  140
  596.   $$ERROR_SUBST_TO_JOIN                     =  141
  597.   $$ERROR_BUSY_DRIVE                        =  142
  598.   $$ERROR_SAME_DRIVE                        =  143
  599.   $$ERROR_DIR_NOT_ROOT                      =  144
  600.   $$ERROR_DIR_NOT_EMPTY                     =  145
  601.   $$ERROR_IS_SUBST_PATH                     =  146
  602.   $$ERROR_IS_JOIN_PATH                      =  147
  603.   $$ERROR_PATH_BUSY                         =  148
  604.   $$ERROR_IS_SUBST_TARGET                   =  149
  605.   $$ERROR_SYSTEM_TRACE                      =  150
  606.   $$ERROR_INVALID_EVENT_COUNT               =  151
  607.   $$ERROR_TOO_MANY_MUXWAITERS               =  152
  608.   $$ERROR_INVALID_LIST_FORMAT               =  153
  609.   $$ERROR_LABEL_TOO_LONG                    =  154
  610.   $$ERROR_TOO_MANY_TCBS                     =  155
  611.   $$ERROR_SIGNAL_REFUSED                    =  156
  612.   $$ERROR_DISCARDED                         =  157
  613.   $$ERROR_NOT_LOCKED                        =  158
  614.   $$ERROR_BAD_THREADID_ADDR                 =  159
  615.   $$ERROR_BAD_ARGUMENTS                     =  160
  616.   $$ERROR_BAD_PATHNAME                      =  161
  617.   $$ERROR_SIGNAL_PENDING                    =  162
  618.   $$ERROR_MAX_THRDS_REACHED                 =  164
  619.   $$ERROR_LOCK_FAILED                       =  167
  620.   $$ERROR_BUSY                              =  170
  621.   $$ERROR_CANCEL_VIOLATION                  =  173
  622.   $$ERROR_ATOMIC_LOCKS_NOT_SUPPORTED        =  174
  623.   $$ERROR_INVALID_SEGMENT_NUMBER            =  180
  624.   $$ERROR_INVALID_ORDINAL                   =  182
  625.   $$ERROR_ALREADY_EXISTS                    =  183
  626.   $$ERROR_INVALID_FLAG_NUMBER               =  186
  627.   $$ERROR_SEM_NOT_FOUND                     =  187
  628.   $$ERROR_INVALID_STARTING_CODESEG          =  188
  629.   $$ERROR_INVALID_STACKSEG                  =  189
  630.   $$ERROR_INVALID_MODULETYPE                =  190
  631.   $$ERROR_INVALID_EXE_SIGNATURE             =  191
  632.   $$ERROR_EXE_MARKED_INVALID                =  192
  633.   $$ERROR_BAD_EXE_FORMAT                    =  193
  634.   $$ERROR_ITERATED_DATA_EXCEEDS_64k         =  194
  635.   $$ERROR_INVALID_MINALLOCSIZE              =  195
  636.   $$ERROR_DYNLINK_FROM_INVALID_RING         =  196
  637.   $$ERROR_IOPL_NOT_ENABLED                  =  197
  638.   $$ERROR_INVALID_SEGDPL                    =  198
  639.   $$ERROR_AUTODATASEG_EXCEEDS_64k           =  199
  640.   $$ERROR_RING2SEG_MUST_BE_MOVABLE          =  200
  641.   $$ERROR_RELOC_CHAIN_XEEDS_SEGLIM          =  201
  642.   $$ERROR_INFLOOP_IN_RELOC_CHAIN            =  202
  643.   $$ERROR_ENVVAR_NOT_FOUND                  =  203
  644.   $$ERROR_NO_SIGNAL_SENT                    =  205
  645.   $$ERROR_FILENAME_EXCED_RANGE              =  206
  646.   $$ERROR_RING2_STACK_IN_USE                =  207
  647.   $$ERROR_META_EXPANSION_TOO_LONG           =  208
  648.   $$ERROR_INVALID_SIGNAL_NUMBER             =  209
  649.   $$ERROR_THREAD_1_INACTIVE                 =  210
  650.   $$ERROR_LOCKED                            =  212
  651.   $$ERROR_TOO_MANY_MODULES                  =  214
  652.   $$ERROR_NESTING_NOT_ALLOWED               =  215
  653.   $$ERROR_BAD_PIPE                          =  230
  654.   $$ERROR_PIPE_BUSY                         =  231
  655.   $$ERROR_NO_DATA                           =  232
  656.   $$ERROR_PIPE_NOT_CONNECTED                =  233
  657.   $$ERROR_MORE_DATA                         =  234
  658.   $$ERROR_VC_DISCONNECTED                   =  240
  659.   $$ERROR_INVALID_EA_NAME                   =  254
  660.   $$ERROR_EA_LIST_INCONSISTENT              =  255
  661.   $$ERROR_NO_MORE_ITEMS                     =  259
  662.   $$ERROR_CANNOT_COPY                       =  266
  663.   $$ERROR_DIRECTORY                         =  267
  664.   $$ERROR_EAS_DIDNT_FIT                     =  275
  665.   $$ERROR_EA_FILE_CORRUPT                   =  276
  666.   $$ERROR_EA_TABLE_FULL                     =  277
  667.   $$ERROR_INVALID_EA_HANDLE                 =  278
  668.   $$ERROR_EAS_NOT_SUPPORTED                 =  282
  669.   $$ERROR_NOT_OWNER                         =  288
  670.   $$ERROR_TOO_MANY_POSTS                    =  298
  671.   $$ERROR_MR_MID_NOT_FOUND                  =  317
  672.   $$ERROR_INVALID_ADDRESS                   =  487
  673.   $$ERROR_ARITHMETIC_OVERFLOW               =  534
  674.   $$ERROR_PIPE_CONNECTED                    =  535
  675.   $$ERROR_PIPE_LISTENING                    =  536
  676.   $$ERROR_EA_ACCESS_DENIED                  =  994
  677.   $$ERROR_OPERATION_ABORTED                 =  995
  678.   $$ERROR_IO_INCOMPLETE                     =  996
  679.   $$ERROR_IO_PENDING                        =  997
  680.   $$ERROR_NOACCESS                          =  998
  681.   $$ERROR_SWAPERROR                         =  999
  682.   $$ERROR_STACK_OVERFLOW                    = 1001
  683.   $$ERROR_INVALID_MESSAGE                   = 1002
  684.   $$ERROR_CAN_NOT_COMPLETE                  = 1003
  685.   $$ERROR_INVALID_FLAGS                     = 1004
  686.   $$ERROR_UNRECOGNIZED_VOLUME               = 1005
  687.   $$ERROR_FILE_INVALID                      = 1006
  688.   $$ERROR_FULLSCREEN_MODE                   = 1007
  689.   $$ERROR_NO_TOKEN                          = 1008
  690.   $$ERROR_BADDB                             = 1009
  691.   $$ERROR_BADKEY                            = 1010
  692.   $$ERROR_CANTOPEN                          = 1011
  693.   $$ERROR_CANTREAD                          = 1012
  694.   $$ERROR_CANTWRITE                         = 1013
  695.   $$ERROR_REGISTRY_RECOVERED                = 1014
  696.   $$ERROR_REGISTRY_CORRUPT                  = 1015
  697.   $$ERROR_REGISTRY_IO_FAILED                = 1016
  698.   $$ERROR_NOT_REGISTRY_FILE                 = 1017
  699.   $$ERROR_KEY_DELETED                       = 1018
  700.   $$ERROR_NO_LOG_SPACE                      = 1019
  701.   $$ERROR_KEY_HAS_CHILDREN                  = 1020
  702.   $$ERROR_CHILD_MUST_BE_VOLATILE            = 1021
  703.   $$ERROR_NOTIFY_ENUM_DIR                   = 1022
  704.   $$ERROR_DEPENDENT_SERVICES_RUNNING        = 1051
  705.   $$ERROR_INVALID_SERVICE_CONTROL           = 1052
  706.   $$ERROR_SERVICE_REQUEST_TIMEOUT           = 1053
  707.   $$ERROR_SERVICE_NO_THREAD                 = 1054
  708.   $$ERROR_SERVICE_DATABASE_LOCKED           = 1055
  709.   $$ERROR_SERVICE_ALREADY_RUNNING           = 1056
  710.   $$ERROR_INVALID_SERVICE_ACCOUNT           = 1057
  711.   $$ERROR_SERVICE_DISABLED                  = 1058
  712.   $$ERROR_CIRCULAR_DEPENDENCY               = 1059
  713.   $$ERROR_SERVICE_DOES_NOT_EXIST            = 1060
  714.   $$ERROR_SERVICE_CANNOT_ACCEPT_CTRL        = 1061
  715.   $$ERROR_SERVICE_NOT_ACTIVE                = 1062
  716.   $$ERROR_FAILED_SERVICE_CONTROLLER_CONNECT = 1063
  717.   $$ERROR_EXCEPTION_IN_SERVICE              = 1064
  718.   $$ERROR_DATABASE_DOES_NOT_EXIST           = 1065
  719.   $$ERROR_SERVICE_SPECIFIC_ERROR            = 1066
  720.   $$ERROR_PROCESS_ABORTED                   = 1067
  721.   $$ERROR_SERVICE_DEPENDENCY_FAIL           = 1068
  722.   $$ERROR_SERVICE_LOGON_FAILED              = 1069
  723.   $$ERROR_SERVICE_START_HANG                = 1070
  724.   $$ERROR_INVALID_SERVICE_LOCK              = 1071
  725.   $$ERROR_SERVICE_MARKED_FOR_DELETE         = 1072
  726.   $$ERROR_SERVICE_EXISTS                    = 1073
  727.   $$ERROR_ALREADY_RUNNING_LKG               = 1074
  728.   $$ERROR_SERVICE_DEPENDENCY_DELETED        = 1075
  729.   $$ERROR_BOOT_ALREADY_ACCEPTED             = 1076
  730.   $$ERROR_SERVICE_NEVER_STARTED             = 1077
  731.   $$ERROR_DUPLICATE_SERVICE_NAME            = 1078
  732.   $$ERROR_END_OF_MEDIA                      = 1100
  733.   $$ERROR_FILEMARK_DETECTED                 = 1101
  734.   $$ERROR_BEGINNING_OF_MEDIA                = 1102
  735.   $$ERROR_SETMARK_DETECTED                  = 1103
  736.   $$ERROR_NO_DATA_DETECTED                  = 1104
  737.   $$ERROR_PARTITION_FAILURE                 = 1105
  738.   $$ERROR_INVALID_BLOCK_LENGTH              = 1106
  739.   $$ERROR_DEVICE_NOT_PARTITIONED            = 1107
  740.   $$ERROR_UNABLE_TO_LOCK_MEDIA              = 1108
  741.   $$ERROR_UNABLE_TO_UNLOAD_MEDIA            = 1109
  742.   $$ERROR_MEDIA_CHANGED                     = 1110
  743.   $$ERROR_BUS_RESET                         = 1111
  744.   $$ERROR_NO_MEDIA_IN_DRIVE                 = 1112
  745.   $$ERROR_NO_UNICODE_TRANSLATION            = 1113
  746.   $$ERROR_DLL_INIT_FAILED                   = 1114
  747.   $$ERROR_SHUTDOWN_IN_PROGRESS              = 1115
  748.   $$ERROR_NO_SHUTDOWN_IN_PROGRESS           = 1116
  749.   $$ERROR_IO_DEVICE                         = 1117
  750.   $$ERROR_SERIAL_NO_DEVICE                  = 1118
  751.   $$ERROR_IRQ_BUSY                          = 1119
  752.   $$ERROR_MORE_WRITES                       = 1120
  753.   $$ERROR_COUNTER_TIMEOUT                   = 1121
  754.   $$ERROR_FLOPPY_ID_MARK_NOT_FOUND          = 1122
  755.   $$ERROR_FLOPPY_WRONG_CYLINDER             = 1123
  756.   $$ERROR_FLOPPY_UNKNOWN_ERROR              = 1124
  757.   $$ERROR_FLOPPY_BAD_REGISTERS              = 1125
  758.   $$ERROR_DISK_RECALIBRATE_FAILED           = 1126
  759.   $$ERROR_DISK_OPERATION_FAILED             = 1127
  760.   $$ERROR_DISK_RESET_FAILED                 = 1128
  761.   $$ERROR_EOM_OVERFLOW                      = 1129
  762.   $$ERROR_NOT_ENOUGH_SERVER_MEMORY          = 1130
  763.   $$ERROR_POSSIBLE_DEADLOCK                 = 1131
  764.   $$ERROR_MAPPED_ALIGNMENT                  = 1132
  765.   $$ERROR_BAD_USERNAME                      = 2202
  766.   $$ERROR_NOT_CONNECTED                     = 2250
  767.   $$ERROR_OPEN_FILES                        = 2401
  768.   $$ERROR_DEVICE_IN_USE                     = 2404
  769.   $$ERROR_BAD_DEVICE                        = 1200
  770.   $$ERROR_CONNECTION_UNAVAIL                = 1201
  771.   $$ERROR_DEVICE_ALREADY_REMEMBERED         = 1202
  772.   $$ERROR_NO_NET_OR_BAD_PATH                = 1203
  773.   $$ERROR_BAD_PROVIDER                      = 1204
  774.   $$ERROR_CANNOT_OPEN_PROFILE               = 1205
  775.   $$ERROR_BAD_PROFILE                       = 1206
  776.   $$ERROR_NOT_CONTAINER                     = 1207
  777.   $$ERROR_EXTENDED_ERROR                    = 1208
  778.   $$ERROR_INVALID_GROUPNAME                 = 1209
  779.   $$ERROR_INVALID_COMPUTERNAME              = 1210
  780.   $$ERROR_INVALID_EVENTNAME                 = 1211
  781.   $$ERROR_INVALID_DOMAINNAME                = 1212
  782.   $$ERROR_INVALID_SERVICENAME               = 1213
  783.   $$ERROR_INVALID_NETNAME                   = 1214
  784.   $$ERROR_INVALID_SHARENAME                 = 1215
  785.   $$ERROR_INVALID_PASSWORDNAME              = 1216
  786.   $$ERROR_INVALID_MESSAGENAME               = 1217
  787.   $$ERROR_INVALID_MESSAGEDEST               = 1218
  788.   $$ERROR_SESSION_CREDENTIAL_CONFLICT       = 1219
  789.   $$ERROR_REMOTE_SESSION_LIMIT_EXCEEDED     = 1220
  790.   $$ERROR_DUP_DOMAINNAME                    = 1221
  791.   $$ERROR_NO_NETWORK                        = 1222
  792.   $$ERROR_NOT_ALL_ASSIGNED                  = 1300
  793.   $$ERROR_SOME_NOT_MAPPED                   = 1301
  794.   $$ERROR_NO_QUOTAS_FOR_ACCOUNT             = 1302
  795.   $$ERROR_LOCAL_USER_SESSION_KEY            = 1303
  796.   $$ERROR_NULL_LM_PASSWORD                  = 1304
  797.   $$ERROR_UNKNOWN_REVISION                  = 1305
  798.   $$ERROR_REVISION_MISMATCH                 = 1306
  799.   $$ERROR_INVALID_OWNER                     = 1307
  800.   $$ERROR_INVALID_PRIMARY_GROUP             = 1308
  801.   $$ERROR_NO_IMPERSONATION_TOKEN            = 1309
  802.   $$ERROR_CANT_DISABLE_MANDATORY            = 1310
  803.   $$ERROR_NO_LOGON_SERVERS                  = 1311
  804.   $$ERROR_NO_SUCH_LOGON_SESSION             = 1312
  805.   $$ERROR_NO_SUCH_PRIVILEGE                 = 1313
  806.   $$ERROR_PRIVILEGE_NOT_HELD                = 1314
  807.   $$ERROR_INVALID_ACCOUNT_NAME              = 1315
  808.   $$ERROR_USER_EXISTS                       = 1316
  809.   $$ERROR_NO_SUCH_USER                      = 1317
  810.   $$ERROR_GROUP_EXISTS                      = 1318
  811.   $$ERROR_NO_SUCH_GROUP                     = 1319
  812.   $$ERROR_MEMBER_IN_GROUP                   = 1320
  813.   $$ERROR_MEMBER_NOT_IN_GROUP               = 1321
  814.   $$ERROR_LAST_ADMIN                        = 1322
  815.   $$ERROR_WRONG_PASSWORD                    = 1323
  816.   $$ERROR_ILL_FORMED_PASSWORD               = 1324
  817.   $$ERROR_PASSWORD_RESTRICTION              = 1325
  818.   $$ERROR_LOGON_FAILURE                     = 1326
  819.   $$ERROR_ACCOUNT_RESTRICTION               = 1327
  820.   $$ERROR_INVALID_LOGON_HOURS               = 1328
  821.   $$ERROR_INVALID_WORKSTATION               = 1329
  822.   $$ERROR_PASSWORD_EXPIRED                  = 1330
  823.   $$ERROR_ACCOUNT_DISABLED                  = 1331
  824.   $$ERROR_NONE_MAPPED                       = 1332
  825.   $$ERROR_TOO_MANY_LUIDS_REQUESTED          = 1333
  826.   $$ERROR_LUIDS_EXHAUSTED                   = 1334
  827.   $$ERROR_INVALID_SUB_AUTHORITY             = 1335
  828.   $$ERROR_INVALID_ACL                       = 1336
  829.   $$ERROR_INVALID_SID                       = 1337
  830.   $$ERROR_INVALID_SECURITY_DESCR            = 1338
  831.   $$ERROR_BAD_INHERITANCE_ACL               = 1340
  832.   $$ERROR_SERVER_DISABLED                   = 1341
  833.   $$ERROR_SERVER_NOT_DISABLED               = 1342
  834.   $$ERROR_INVALID_ID_AUTHORITY              = 1343
  835.   $$ERROR_ALLOTTED_SPACE_EXCEEDED           = 1344
  836.   $$ERROR_INVALID_GROUP_ATTRIBUTES          = 1345
  837.   $$ERROR_BAD_IMPERSONATION_LEVEL           = 1346
  838.   $$ERROR_CANT_OPEN_ANONYMOUS               = 1347
  839.   $$ERROR_BAD_VALIDATION_CLASS              = 1348
  840.   $$ERROR_BAD_TOKEN_TYPE                    = 1349
  841.   $$ERROR_NO_SECURITY_ON_OBJECT             = 1350
  842.   $$ERROR_CANT_ACCESS_DOMAIN_INFO           = 1351
  843.   $$ERROR_INVALID_SERVER_STATE              = 1352
  844.   $$ERROR_INVALID_DOMAIN_STATE              = 1353
  845.   $$ERROR_INVALID_DOMAIN_ROLE               = 1354
  846.   $$ERROR_NO_SUCH_DOMAIN                    = 1355
  847.   $$ERROR_DOMAIN_EXISTS                     = 1356
  848.   $$ERROR_DOMAIN_LIMIT_EXCEEDED             = 1357
  849.   $$ERROR_INTERNAL_DB_CORRUPTION            = 1358
  850.   $$ERROR_INTERNAL_ERROR                    = 1359
  851.   $$ERROR_GENERIC_NOT_MAPPED                = 1360
  852.   $$ERROR_BAD_DESCRIPTOR_FORMAT             = 1361
  853.   $$ERROR_NOT_LOGON_PROCESS                 = 1362
  854.   $$ERROR_LOGON_SESSION_EXISTS              = 1363
  855.   $$ERROR_NO_SUCH_PACKAGE                   = 1364
  856.   $$ERROR_BAD_LOGON_SESSION_STATE           = 1365
  857.   $$ERROR_LOGON_SESSION_COLLISION           = 1366
  858.   $$ERROR_INVALID_LOGON_TYPE                = 1367
  859.   $$ERROR_CANNOT_IMPERSONATE                = 1368
  860.   $$ERROR_RXACT_INVALID_STATE               = 1369
  861.   $$ERROR_RXACT_COMMIT_FAILURE              = 1370
  862.   $$ERROR_SPECIAL_ACCOUNT                   = 1371
  863.   $$ERROR_SPECIAL_GROUP                     = 1372
  864.   $$ERROR_SPECIAL_USER                      = 1373
  865.   $$ERROR_MEMBERS_PRIMARY_GROUP             = 1374
  866.   $$ERROR_TOKEN_ALREADY_IN_USE              = 1375
  867.   $$ERROR_NO_SUCH_ALIAS                     = 1376
  868.   $$ERROR_MEMBER_NOT_IN_ALIAS               = 1377
  869.   $$ERROR_MEMBER_IN_ALIAS                   = 1378
  870.   $$ERROR_ALIAS_EXISTS                      = 1379
  871.   $$ERROR_LOGON_NOT_GRANTED                 = 1380
  872.   $$ERROR_TOO_MANY_SECRETS                  = 1381
  873.   $$ERROR_SECRET_TOO_LONG                   = 1382
  874.   $$ERROR_INTERNAL_DB_ERROR                 = 1383
  875.   $$ERROR_TOO_MANY_CONTEXT_IDS              = 1384
  876.   $$ERROR_LOGON_TYPE_NOT_GRANTED            = 1385
  877.   $$ERROR_NT_CROSS_ENCRYPTION_REQUIRED      = 1386
  878.   $$ERROR_NO_SUCH_MEMBER                    = 1387
  879.   $$ERROR_INVALID_MEMBER                    = 1388
  880.   $$ERROR_TOO_MANY_SIDS                     = 1389
  881.   $$ERROR_LM_CROSS_ENCRYPTION_REQUIRED      = 1390
  882.   $$ERROR_NO_INHERITANCE                    = 1391
  883.   $$ERROR_FILE_CORRUPT                      = 1392
  884.   $$ERROR_DISK_CORRUPT                      = 1393
  885.   $$ERROR_NO_USER_SESSION_KEY               = 1394
  886.   $$ERROR_INVALID_WINDOW_HANDLE             = 1400
  887.   $$ERROR_INVALID_MENU_HANDLE               = 1401
  888.   $$ERROR_INVALID_CURSOR_HANDLE             = 1402
  889.   $$ERROR_INVALID_ACCEL_HANDLE              = 1403
  890.   $$ERROR_INVALID_HOOK_HANDLE               = 1404
  891.   $$ERROR_INVALID_DWP_HANDLE                = 1405
  892.   $$ERROR_TLW_WITH_WSCHILD                  = 1406
  893.   $$ERROR_CANNOT_FIND_WND_CLASS             = 1407
  894.   $$ERROR_WINDOW_OF_OTHER_THREAD            = 1408
  895.   $$ERROR_HOTKEY_ALREADY_REGISTERED         = 1409
  896.   $$ERROR_CLASS_ALREADY_EXISTS              = 1410
  897.   $$ERROR_CLASS_DOES_NOT_EXIST              = 1411
  898.   $$ERROR_CLASS_HAS_WINDOWS                 = 1412
  899.   $$ERROR_INVALID_INDEX                     = 1413
  900.   $$ERROR_INVALID_ICON_HANDLE               = 1414
  901.   $$ERROR_PRIVATE_DIALOG_INDEX              = 1415
  902.   $$ERROR_LISTBOX_ID_NOT_FOUND              = 1416
  903.   $$ERROR_NO_WILDCARD_CHARACTERS            = 1417
  904.   $$ERROR_CLIPBOARD_NOT_OPEN                = 1418
  905.   $$ERROR_HOTKEY_NOT_REGISTERED             = 1419
  906.   $$ERROR_WINDOW_NOT_DIALOG                 = 1420
  907.   $$ERROR_CONTROL_ID_NOT_FOUND              = 1421
  908.   $$ERROR_INVALID_COMBOBOX_MESSAGE          = 1422
  909.   $$ERROR_WINDOW_NOT_COMBOBOX               = 1423
  910.   $$ERROR_INVALID_EDIT_HEIGHT               = 1424
  911.   $$ERROR_DC_NOT_FOUND                      = 1425
  912.   $$ERROR_INVALID_HOOK_FILTER               = 1426
  913.   $$ERROR_INVALID_FILTER_PROC               = 1427
  914.   $$ERROR_HOOK_NEEDS_HMOD                   = 1428
  915.   $$ERROR_GLOBAL_ONLY_HOOK                  = 1429
  916.   $$ERROR_JOURNAL_HOOK_SET                  = 1430
  917.   $$ERROR_HOOK_NOT_INSTALLED                = 1431
  918.   $$ERROR_INVALID_LB_MESSAGE                = 1432
  919.   $$ERROR_SETCOUNT_ON_BAD_LB                = 1433
  920.   $$ERROR_LB_WITHOUT_TABSTOPS               = 1434
  921.   $$ERROR_DESTROY_OBJECT_OF_OTHER_THREAD    = 1435
  922.   $$ERROR_CHILD_WINDOW_MENU                 = 1436
  923.   $$ERROR_NO_SYSTEM_MENU                    = 1437
  924.   $$ERROR_INVALID_MSGBOX_STYLE              = 1438
  925.   $$ERROR_INVALID_SPI_VALUE                 = 1439
  926.   $$ERROR_SCREEN_ALREADY_LOCKED             = 1440
  927.   $$ERROR_HWNDS_HAVE_DIFF_PARENT            = 1441
  928.   $$ERROR_NOT_CHILD_WINDOW                  = 1442
  929.   $$ERROR_INVALID_GW_COMMAND                = 1443
  930.   $$ERROR_INVALID_THREAD_ID                 = 1444
  931.   $$ERROR_NON_MDICHILD_WINDOW               = 1445
  932.   $$ERROR_POPUP_ALREADY_ACTIVE              = 1446
  933.   $$ERROR_NO_SCROLLBARS                     = 1447
  934.   $$ERROR_INVALID_SCROLLBAR_RANGE           = 1448
  935.   $$ERROR_INVALID_SHOWWIN_COMMAND           = 1449
  936.   $$ERROR_EVENTLOG_FILE_CORRUPT             = 1500
  937.   $$ERROR_EVENTLOG_CANT_START               = 1501
  938.   $$ERROR_LOG_FILE_FULL                     = 1502
  939.   $$ERROR_EVENTLOG_FILE_CHANGED             = 1503
  940.   $$ERROR_INVALID_USER_BUFFER               = 1784
  941.   $$ERROR_UNRECOGNIZED_MEDIA                = 1785
  942.   $$ERROR_NO_TRUST_LSA_SECRET               = 1786
  943.   $$ERROR_NO_TRUST_SAM_ACCOUNT              = 1787
  944.   $$ERROR_TRUSTED_DOMAIN_FAILURE            = 1788
  945.   $$ERROR_TRUSTED_RELATIONSHIP_FAILURE      = 1789
  946.   $$ERROR_TRUST_FAILURE                     = 1790
  947.   $$ERROR_NETLOGON_NOT_STARTED              = 1792
  948.   $$ERROR_ACCOUNT_EXPIRED                   = 1793
  949.   $$ERROR_REDIRECTOR_HAS_OPEN_HANDLES       = 1794
  950.   $$ERROR_PRINTER_DRIVER_ALREADY_INSTALLED  = 1795
  951.   $$ERROR_UNKNOWN_PORT                      = 1796
  952.   $$ERROR_UNKNOWN_PRINTER_DRIVER            = 1797
  953.   $$ERROR_UNKNOWN_PRINTPROCESSOR            = 1798
  954.   $$ERROR_INVALID_SEPARATOR_FILE            = 1799
  955.   $$ERROR_INVALID_PRIORITY                  = 1800
  956.   $$ERROR_INVALID_PRINTER_NAME              = 1801
  957.   $$ERROR_PRINTER_ALREADY_EXISTS            = 1802
  958.   $$ERROR_INVALID_PRINTER_COMMAND           = 1803
  959.   $$ERROR_INVALID_DATATYPE                  = 1804
  960.   $$ERROR_INVALID_ENVIRONMENT               = 1805
  961.   $$ERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT = 1807
  962.   $$ERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT = 1808
  963.   $$ERROR_NOLOGON_SERVER_TRUST_ACCOUNT      = 1809
  964.   $$ERROR_DOMAIN_TRUST_INCONSISTENT         = 1810
  965.   $$ERROR_SERVER_HAS_OPEN_HANDLES           = 1811
  966.   $$ERROR_RESOURCE_DATA_NOT_FOUND           = 1812
  967.   $$ERROR_RESOURCE_TYPE_NOT_FOUND           = 1813
  968.   $$ERROR_RESOURCE_NAME_NOT_FOUND           = 1814
  969.   $$ERROR_RESOURCE_LANG_NOT_FOUND           = 1815
  970.   $$ERROR_NOT_ENOUGH_QUOTA                  = 1816
  971.   $$ERROR_INVALID_TIME                      = 1901
  972.   $$ERROR_INVALID_FORM_NAME                 = 1902
  973.   $$ERROR_INVALID_FORM_SIZE                 = 1903
  974.   $$ERROR_ALREADY_WAITING                   = 1904
  975.   $$ERROR_PRINTER_DELETED                   = 1905
  976.   $$ERROR_INVALID_PRINTER_STATE             = 1906
  977.   $$ERROR_NO_BROWSER_SERVERS_FOUND          = 6118
  978.   $$ERROR_LAST_OS_ERROR                     = 8191
  979. '
  980. '
  981. ' ***************************************
  982. ' *****  Win32 Exception Constants  *****
  983. ' ***************************************
  984. '
  985.   $$EXCEPTION_ACCESS_VIOLATION          = 0xC0000005
  986.   $$EXCEPTION_ARRAY_BOUNDS_EXCEEDED     = 0xC000008C
  987.   $$EXCEPTION_BREAKPOINT                = 0x80000003
  988.   $$EXCEPTION_CONTROL_C_EXIT            = 0xC000013A
  989.   $$EXCEPTION_DATATYPE_MISALIGNMENT     = 0x80000002
  990.   $$EXCEPTION_FLOAT_DENORMAL_OPERAND    = 0xC000008D
  991.   $$EXCEPTION_FLOAT_DIVIDE_BY_ZERO      = 0xC000008E
  992.   $$EXCEPTION_FLOAT_INVALID_OPERATION   = 0xC0000090
  993.   $$EXCEPTION_FLOAT_OVERFLOW            = 0xC0000091
  994.   $$EXCEPTION_FLOAT_STACK_CHECK         = 0xC0000092
  995.   $$EXCEPTION_FLOAT_UNDERFLOW           = 0xC0000093
  996.   $$EXCEPTION_ILLEGAL_INSTRUCTION       = 0xC000001D
  997.   $$EXCEPTION_INT_DIVIDE_BY_ZERO        = 0xC0000094
  998.   $$EXCEPTION_INT_OVERFLOW              = 0xC0000095
  999.   $$EXCEPTION_INVALID_DISPOSITION       = 0xC0000026
  1000.   $$EXCEPTION_NONCONTINUABLE_EXCEPTION  = 0xC0000025
  1001.   $$EXCEPTION_PRIV_INSTRUCTION          = 0xC0000096
  1002.   $$EXCEPTION_STACK_OVERFLOW            = 0xC00000FD
  1003. '
  1004.   $$EXCEPTION_CONTINUE_SEARCH           =  0
  1005.   $$EXCEPTION_EXECUTE_HANDLER           =  1
  1006.   $$EXCEPTION_CONTINUE_EXECUTION        = -1
  1007.