home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1997 May / Pcwk0597.iso / sybase / starbuck / hpp.z / WERROR.HPP < prev    next >
C/C++ Source or Header  |  1996-10-18  |  25KB  |  744 lines

  1. /* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2.    %     Copyright (C) 1995, by WATCOM International Inc.  All rights    %
  3.    %     reserved.  No part of this software may be reproduced or        %
  4.    %     used in any form or by any means - graphic, electronic or       %
  5.    %     mechanical, including photocopying, recording, taping or        %
  6.    %     information storage and retrieval systems - except with the     %
  7.    %     written permission of WATCOM International Inc.                 %
  8.    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  9. */
  10.  
  11. #ifndef _WERROR_HPP_INCLUDED
  12. #define _WERROR_HPP_INCLUDED
  13.  
  14. #ifndef _WNO_PRAGMA_PUSH
  15. #pragma pack(push,8);
  16. #pragma enum int;
  17. #endif
  18.  
  19. #ifndef _WSTRING_HPP_INCLUDED
  20. #   include     "wstring.hpp"
  21. #endif
  22.  
  23. #include "werrcode.hpp"
  24.  
  25. enum WErrorCode {
  26.     WERROR_SUCCESS                              = 0L,
  27.     WERROR_INVALID_FUNCTION,
  28.     WERROR_FILE_NOT_FOUND,
  29.     WERROR_PATH_NOT_FOUND,
  30.     WERROR_TOO_MANY_OPEN_FILES,
  31.     WERROR_ACCESS_DENIED,
  32.     WERROR_INVALID_HANDLE,
  33.     WERROR_ARENA_TRASHED,
  34.     WERROR_NOT_ENOUGH_MEMORY,
  35.     WERROR_INVALID_BLOCK,
  36.     WERROR_BAD_ENVIRONMENT,
  37.     WERROR_BAD_FORMAT,
  38.     WERROR_INVALID_ACCESS,
  39.     WERROR_INVALID_DATA,
  40.     WERROR_OUTOFMEMORY,
  41.     WERROR_INVALID_DRIVE,
  42.     WERROR_CURRENT_DIRECTORY,
  43.     WERROR_NOT_SAME_DEVICE,
  44.     WERROR_NO_MORE_FILES,
  45.     WERROR_WRITE_PROTECT,
  46.     WERROR_BAD_UNIT,
  47.     WERROR_NOT_READY,
  48.     WERROR_BAD_COMMAND,
  49.     WERROR_CRC,
  50.     WERROR_BAD_LENGTH,
  51.     WERROR_SEEK,
  52.     WERROR_NOT_DOS_DISK,
  53.     WERROR_SECTOR_NOT_FOUND,
  54.     WERROR_OUT_OF_PAPER,
  55.     WERROR_WRITE_FAULT,
  56.     WERROR_READ_FAULT,
  57.     WERROR_GEN_FAILURE,
  58.     WERROR_SHARING_VIOLATION,
  59.     WERROR_LOCK_VIOLATION,
  60.     WERROR_WRONG_DISK,
  61.     WERROR_SHARING_BUFFER_EXCEEDED              = 36L,
  62.     WERROR_HANDLE_EOF                           = 38L,
  63.     WERROR_HANDLE_DISK_FULL,
  64.     WERROR_NOT_SUPPORTED                        = 50L,
  65.     WERROR_REM_NOT_LIST,
  66.     WERROR_DUP_NAME,
  67.     WERROR_BAD_NETPATH,
  68.     WERROR_NETWORK_BUSY,
  69.     WERROR_DEV_NOT_EXIST,
  70.     WERROR_TOO_MANY_CMDS,
  71.     WERROR_ADAP_HDW_ERR,
  72.     WERROR_BAD_NET_RESP,
  73.     WERROR_UNEXP_NET_ERR,
  74.     WERROR_BAD_REM_ADAP,
  75.     WERROR_PRINTQ_FULL,
  76.     WERROR_NO_SPOOL_SPACE,
  77.     WERROR_PRINT_CANCELLED,
  78.     WERROR_NETNAME_DELETED,
  79.     WERROR_NETWORK_ACCESS_DENIED,
  80.     WERROR_BAD_DEV_TYPE,
  81.     WERROR_BAD_NET_NAME,
  82.     WERROR_TOO_MANY_NAMES,
  83.     WERROR_TOO_MANY_SESS,
  84.     WERROR_SHARING_PAUSED,
  85.     WERROR_REQ_NOT_ACCEP,
  86.     WERROR_REDIR_PAUSED,
  87.     WERROR_FILE_EXISTS                          = 80L,
  88.     WERROR_CANNOT_MAKE                          = 82L,
  89.     WERROR_FAIL_I24,
  90.     WERROR_OUT_OF_STRUCTURES,
  91.     WERROR_ALREADY_ASSIGNED,
  92.     WERROR_INVALID_PASSWORD,
  93.     WERROR_INVALID_PARAMETER,
  94.     WERROR_NET_WRITE_FAULT,
  95.     WERROR_NO_PROC_SLOTS,
  96.     WERROR_TOO_MANY_SEMAPHORES                  = 100L,
  97.     WERROR_EXCL_SEM_ALREADY_OWNED,
  98.     WERROR_SEM_IS_SET,
  99.     WERROR_TOO_MANY_SEM_REQUESTS,
  100.     WERROR_INVALID_AT_INTERRUPT_TIME,
  101.     WERROR_SEM_OWNER_DIED,
  102.     WERROR_SEM_USER_LIMIT,
  103.     WERROR_DISK_CHANGE,
  104.     WERROR_DRIVE_LOCKED,
  105.     WERROR_BROKEN_PIPE,
  106.     WERROR_OPEN_FAILED,
  107.     WERROR_BUFFER_OVERFLOW,
  108.     WERROR_DISK_FULL,
  109.     WERROR_NO_MORE_SEARCH_HANDLES,
  110.     WERROR_INVALID_TARGET_HANDLE,
  111.     WERROR_INVALID_CATEGORY                     = 117L,
  112.     WERROR_INVALID_VERIFY_SWITCH,
  113.     WERROR_BAD_DRIVER_LEVEL,
  114.     WERROR_CALL_NOT_IMPLEMENTED,
  115.     WERROR_SEM_TIMEOUT,
  116.     WERROR_INSUFFICIENT_BUFFER,
  117.     WERROR_INVALID_NAME,
  118.     WERROR_INVALID_LEVEL,
  119.     WERROR_NO_VOLUME_LABEL,
  120.     WERROR_MOD_NOT_FOUND,
  121.     WERROR_PROC_NOT_FOUND,
  122.     WERROR_WAIT_NO_CHILDREN,
  123.     WERROR_CHILD_NOT_COMPLETE,
  124.     WERROR_DIRECT_ACCESS_HANDLE,
  125.     WERROR_NEGATIVE_SEEK,
  126.     WERROR_SEEK_ON_DEVICE,
  127.     WERROR_IS_JOIN_TARGET,
  128.     WERROR_IS_JOINED,
  129.     WERROR_IS_SUBSTED,
  130.     WERROR_NOT_JOINED,
  131.     WERROR_NOT_SUBSTED,
  132.     WERROR_JOIN_TO_JOIN,
  133.     WERROR_SUBST_TO_SUBST,
  134.     WERROR_JOIN_TO_SUBST,
  135.     WERROR_SUBST_TO_JOIN,
  136.     WERROR_BUSY_DRIVE,
  137.     WERROR_SAME_DRIVE,
  138.     WERROR_DIR_NOT_ROOT,
  139.     WERROR_DIR_NOT_EMPTY,
  140.     WERROR_IS_SUBST_PATH,
  141.     WERROR_IS_JOIN_PATH,
  142.     WERROR_PATH_BUSY,
  143.     WERROR_IS_SUBST_TARGET,
  144.     WERROR_SYSTEM_TRACE,
  145.     WERROR_INVALID_EVENT_COUNT,
  146.     WERROR_TOO_MANY_MUXWAITERS,
  147.     WERROR_INVALID_LIST_FORMAT,
  148.     WERROR_LABEL_TOO_LONG,
  149.     WERROR_TOO_MANY_TCBS,
  150.     WERROR_SIGNAL_REFUSED,
  151.     WERROR_DISCARDED,
  152.     WERROR_NOT_LOCKED,
  153.     WERROR_BAD_THREADID_ADDR,
  154.     WERROR_BAD_ARGUMENTS,
  155.     WERROR_BAD_PATHNAME,
  156.     WERROR_SIGNAL_PENDING,
  157.     WERROR_MAX_THRDS_REACHED                    = 164L,
  158.     WERROR_LOCK_FAILED                          = 167L,
  159.     WERROR_BUSY                                 = 170L,
  160.     WERROR_CANCEL_VIOLATION                     = 173L,
  161.     WERROR_ATOMIC_LOCKS_NOT_SUPPORTED,
  162.     WERROR_INVALID_SEGMENT_NUMBER               = 180L,
  163.     WERROR_INVALID_ORDINAL                      = 182L,
  164.     WERROR_ALREADY_EXISTS,
  165.     WERROR_INVALID_FLAG_NUMBER                  = 186L,
  166.     WERROR_SEM_NOT_FOUND,
  167.     WERROR_INVALID_STARTING_CODESEG,
  168.     WERROR_INVALID_STACKSEG,
  169.     WERROR_INVALID_MODULETYPE,
  170.     WERROR_INVALID_EXE_SIGNATURE,
  171.     WERROR_EXE_MARKED_INVALID,
  172.     WERROR_BAD_EXE_FORMAT,
  173.     WERROR_ITERATED_DATA_EXCEEDS_64k,
  174.     WERROR_INVALID_MINALLOCSIZE,
  175.     WERROR_DYNLINK_FROM_INVALID_RING,
  176.     WERROR_IOPL_NOT_ENABLED,
  177.     WERROR_INVALID_SEGDPL,
  178.     WERROR_AUTODATASEG_EXCEEDS_64k,
  179.     WERROR_RING2SEG_MUST_BE_MOVABLE,
  180.     WERROR_RELOC_CHAIN_XEEDS_SEGLIM,
  181.     WERROR_INFLOOP_IN_RELOC_CHAIN,
  182.     WERROR_ENVVAR_NOT_FOUND,
  183.     WERROR_NO_SIGNAL_SENT                       = 205L,
  184.     WERROR_FILENAME_EXCED_RANGE,
  185.     WERROR_RING2_STACK_IN_USE,
  186.     WERROR_META_EXPANSION_TOO_LONG,
  187.     WERROR_INVALID_SIGNAL_NUMBER,
  188.     WERROR_THREAD_1_INACTIVE,
  189.     WERROR_LOCKED                               = 212L,
  190.     WERROR_TOO_MANY_MODULES                     = 214L,
  191.     WERROR_NESTING_NOT_ALLOWED,
  192.     WERROR_BAD_PIPE                             = 230L,
  193.     WERROR_PIPE_BUSY,
  194.     WERROR_NO_DATA,
  195.     WERROR_PIPE_NOT_CONNECTED,
  196.     WERROR_MORE_DATA,
  197.     WERROR_VC_DISCONNECTED                      = 240L,
  198.     WERROR_INVALID_EA_NAME                      = 254L,
  199.     WERROR_EA_LIST_INCONSISTENT,
  200.     WERROR_NO_MORE_ITEMS                        = 259L,
  201.     WERROR_CANNOT_COPY                          = 266L,
  202.     WERROR_DIRECTORY,
  203.     WERROR_EAS_DIDNT_FIT                        = 275L,
  204.     WERROR_EA_FILE_CORRUPT,
  205.     WERROR_EA_TABLE_FULL,
  206.     WERROR_INVALID_EA_HANDLE,
  207.     WERROR_EAS_NOT_SUPPORTED                    = 282L,
  208.     WERROR_NOT_OWNER                            = 288L,
  209.     WERROR_TOO_MANY_POSTS                       = 298L,
  210.     WERROR_PARTIAL_COPY,
  211.     WERROR_MR_MID_NOT_FOUND                     = 317L,
  212.     WERROR_INVALID_ADDRESS                      = 487L,
  213.     WERROR_ARITHMETIC_OVERFLOW                  = 534L,
  214.     WERROR_PIPE_CONNECTED,
  215.     WERROR_PIPE_LISTENING,
  216.     WERROR_EA_ACCESS_DENIED                     = 994L,
  217.     WERROR_OPERATION_ABORTED,
  218.     WERROR_IO_INCOMPLETE,
  219.     WERROR_IO_PENDING,
  220.     WERROR_NOACCESS,
  221.     WERROR_SWAPERROR,
  222.     WERROR_STACK_OVERFLOW                       = 1001L,
  223.     WERROR_INVALID_MESSAGE,
  224.     WERROR_CAN_NOT_COMPLETE,
  225.     WERROR_INVALID_FLAGS,
  226.     WERROR_UNRECOGNIZED_VOLUME,
  227.     WERROR_FILE_INVALID,
  228.     WERROR_FULLSCREEN_MODE,
  229.     WERROR_NO_TOKEN,
  230.     WERROR_BADDB,
  231.     WERROR_BADKEY,
  232.     WERROR_CANTOPEN,
  233.     WERROR_CANTREAD,
  234.     WERROR_CANTWRITE,
  235.     WERROR_REGISTRY_RECOVERED,
  236.     WERROR_REGISTRY_CORRUPT,
  237.     WERROR_REGISTRY_IO_FAILED,
  238.     WERROR_NOT_REGISTRY_FILE,
  239.     WERROR_KEY_DELETED,
  240.     WERROR_NO_LOG_SPACE,
  241.     WERROR_KEY_HAS_CHILDREN,
  242.     WERROR_CHILD_MUST_BE_VOLATILE,
  243.     WERROR_NOTIFY_ENUM_DIR,
  244.     WERROR_DEPENDENT_SERVICES_RUNNING           = 1051L,
  245.     WERROR_INVALID_SERVICE_CONTROL,
  246.     WERROR_SERVICE_REQUEST_TIMEOUT,
  247.     WERROR_SERVICE_NO_THREAD,
  248.     WERROR_SERVICE_DATABASE_LOCKED,
  249.     WERROR_SERVICE_ALREADY_RUNNING,
  250.     WERROR_INVALID_SERVICE_ACCOUNT,
  251.     WERROR_SERVICE_DISABLED,
  252.     WERROR_CIRCULAR_DEPENDENCY,
  253.     WERROR_SERVICE_DOES_NOT_EXIST,
  254.     WERROR_SERVICE_CANNOT_ACCEPT_CTRL,
  255.     WERROR_SERVICE_NOT_ACTIVE,
  256.     WERROR_FAILED_SERVICE_CONTROLLER_CONNECT,
  257.     WERROR_EXCEPTION_IN_SERVICE,
  258.     WERROR_DATABASE_DOES_NOT_EXIST,
  259.     WERROR_SERVICE_SPECIFIC_ERROR,
  260.     WERROR_PROCESS_ABORTED,
  261.     WERROR_SERVICE_DEPENDENCY_FAIL,
  262.     WERROR_SERVICE_LOGON_FAILED,
  263.     WERROR_SERVICE_START_HANG,
  264.     WERROR_INVALID_SERVICE_LOCK,
  265.     WERROR_SERVICE_MARKED_FOR_DELETE,
  266.     WERROR_SERVICE_EXISTS,
  267.     WERROR_ALREADY_RUNNING_LKG,
  268.     WERROR_SERVICE_DEPENDENCY_DELETED,
  269.     WERROR_BOOT_ALREADY_ACCEPTED,
  270.     WERROR_SERVICE_NEVER_STARTED,
  271.     WERROR_DUPLICATE_SERVICE_NAME,
  272.     WERROR_END_OF_MEDIA                         = 1100L,
  273.     WERROR_FILEMARK_DETECTED,
  274.     WERROR_BEGINNING_OF_MEDIA,
  275.     WERROR_SETMARK_DETECTED,
  276.     WERROR_NO_DATA_DETECTED,
  277.     WERROR_PARTITION_FAILURE,
  278.     WERROR_INVALID_BLOCK_LENGTH,
  279.     WERROR_DEVICE_NOT_PARTITIONED,
  280.     WERROR_UNABLE_TO_LOCK_MEDIA,
  281.     WERROR_UNABLE_TO_UNLOAD_MEDIA,
  282.     WERROR_MEDIA_CHANGED,
  283.     WERROR_BUS_RESET,
  284.     WERROR_NO_MEDIA_IN_DRIVE,
  285.     WERROR_NO_UNICODE_TRANSLATION,
  286.     WERROR_DLL_INIT_FAILED,
  287.     WERROR_SHUTDOWN_IN_PROGRESS,
  288.     WERROR_NO_SHUTDOWN_IN_PROGRESS,
  289.     WERROR_IO_DEVICE,
  290.     WERROR_SERIAL_NO_DEVICE,
  291.     WERROR_IRQ_BUSY,
  292.     WERROR_MORE_WRITES,
  293.     WERROR_COUNTER_TIMEOUT,
  294.     WERROR_FLOPPY_ID_MARK_NOT_FOUND,
  295.     WERROR_FLOPPY_WRONG_CYLINDER,
  296.     WERROR_FLOPPY_UNKNOWN_ERROR,
  297.     WERROR_FLOPPY_BAD_REGISTERS,
  298.     WERROR_DISK_RECALIBRATE_FAILED,
  299.     WERROR_DISK_OPERATION_FAILED,
  300.     WERROR_DISK_RESET_FAILED,
  301.     WERROR_EOM_OVERFLOW,
  302.     WERROR_NOT_ENOUGH_SERVER_MEMORY,
  303.     WERROR_POSSIBLE_DEADLOCK,
  304.     WERROR_MAPPED_ALIGNMENT,
  305.     WERROR_BAD_DEVICE                           = 1200L,
  306.     WERROR_CONNECTION_UNAVAIL,
  307.     WERROR_DEVICE_ALREADY_REMEMBERED,
  308.     WERROR_NO_NET_OR_BAD_PATH,
  309.     WERROR_BAD_PROVIDER,
  310.     WERROR_CANNOT_OPEN_PROFILE,
  311.     WERROR_BAD_PROFILE,
  312.     WERROR_NOT_CONTAINER,
  313.     WERROR_EXTENDED_ERROR,
  314.     WERROR_INVALID_GROUPNAME,
  315.     WERROR_INVALID_COMPUTERNAME,
  316.     WERROR_INVALID_EVENTNAME,
  317.     WERROR_INVALID_DOMAINNAME,
  318.     WERROR_INVALID_SERVICENAME,
  319.     WERROR_INVALID_NETNAME,
  320.     WERROR_INVALID_SHARENAME,
  321.     WERROR_INVALID_PASSWORDNAME,
  322.     WERROR_INVALID_MESSAGENAME,
  323.     WERROR_INVALID_MESSAGEDEST,
  324.     WERROR_SESSION_CREDENTIAL_CONFLICT,
  325.     WERROR_REMOTE_SESSION_LIMIT_EXCEEDED,
  326.     WERROR_DUP_DOMAINNAME,
  327.     WERROR_NO_NETWORK,
  328.     WERROR_CANCELLED,
  329.     WERROR_USER_MAPPED_FILE,
  330.     WERROR_CONNECTION_REFUSED,
  331.     WERROR_GRACEFUL_DISCONNECT,
  332.     WERROR_ADDRESS_ALREADY_ASSOCIATED,
  333.     WERROR_ADDRESS_NOT_ASSOCIATED,
  334.     WERROR_CONNECTION_INVALID,
  335.     WERROR_CONNECTION_ACTIVE,
  336.     WERROR_NETWORK_UNREACHABLE,
  337.     WERROR_HOST_UNREACHABLE,
  338.     WERROR_PROTOCOL_UNREACHABLE,
  339.     WERROR_PORT_UNREACHABLE,
  340.     WERROR_REQUEST_ABORTED,
  341.     WERROR_CONNECTION_ABORTED,
  342.     WERROR_RETRY,
  343.     WERROR_CONNECTION_COUNT_LIMIT,
  344.     WERROR_LOGIN_TIME_RESTRICTION,
  345.     WERROR_LOGIN_WKSTA_RESTRICTION,
  346.     WERROR_INCORRECT_ADDRESS,
  347.     WERROR_ALREADY_REGISTERED,
  348.     WERROR_SERVICE_NOT_FOUND,
  349.     WERROR_NOT_AUTHENTICATED,
  350.     WERROR_NOT_LOGGED_ON,
  351.     WERROR_CONTINUE,
  352.     WERROR_ALREADY_INITIALIZED,
  353.     WERROR_NO_MORE_DEVICES,
  354.     WERROR_NOT_ALL_ASSIGNED                     = 1300L,
  355.     WERROR_SOME_NOT_MAPPED,
  356.     WERROR_NO_QUOTAS_FOR_ACCOUNT,
  357.     WERROR_LOCAL_USER_SESSION_KEY,
  358.     WERROR_NULL_LM_PASSWORD,
  359.     WERROR_UNKNOWN_REVISION,
  360.     WERROR_REVISION_MISMATCH,
  361.     WERROR_INVALID_OWNER,
  362.     WERROR_INVALID_PRIMARY_GROUP,
  363.     WERROR_NO_IMPERSONATION_TOKEN,
  364.     WERROR_CANT_DISABLE_MANDATORY,
  365.     WERROR_NO_LOGON_SERVERS,
  366.     WERROR_NO_SUCH_LOGON_SESSION,
  367.     WERROR_NO_SUCH_PRIVILEGE,
  368.     WERROR_PRIVILEGE_NOT_HELD,
  369.     WERROR_INVALID_ACCOUNT_NAME,
  370.     WERROR_USER_EXISTS,
  371.     WERROR_NO_SUCH_USER,
  372.     WERROR_GROUP_EXISTS,
  373.     WERROR_NO_SUCH_GROUP,
  374.     WERROR_MEMBER_IN_GROUP,
  375.     WERROR_MEMBER_NOT_IN_GROUP,
  376.     WERROR_LAST_ADMIN,
  377.     WERROR_WRONG_PASSWORD,
  378.     WERROR_ILL_FORMED_PASSWORD,
  379.     WERROR_PASSWORD_RESTRICTION,
  380.     WERROR_LOGON_FAILURE,
  381.     WERROR_ACCOUNT_RESTRICTION,
  382.     WERROR_INVALID_LOGON_HOURS,
  383.     WERROR_INVALID_WORKSTATION,
  384.     WERROR_PASSWORD_EXPIRED,
  385.     WERROR_ACCOUNT_DISABLED,
  386.     WERROR_NONE_MAPPED,
  387.     WERROR_TOO_MANY_LUIDS_REQUESTED,
  388.     WERROR_LUIDS_EXHAUSTED,
  389.     WERROR_INVALID_SUB_AUTHORITY,
  390.     WERROR_INVALID_ACL,
  391.     WERROR_INVALID_SID,
  392.     WERROR_INVALID_SECURITY_DESCR,
  393.     WERROR_BAD_INHERITANCE_ACL                  = 1340L,
  394.     WERROR_SERVER_DISABLED,
  395.     WERROR_SERVER_NOT_DISABLED,
  396.     WERROR_INVALID_ID_AUTHORITY,
  397.     WERROR_ALLOTTED_SPACE_EXCEEDED,
  398.     WERROR_INVALID_GROUP_ATTRIBUTES,
  399.     WERROR_BAD_IMPERSONATION_LEVEL,
  400.     WERROR_CANT_OPEN_ANONYMOUS,
  401.     WERROR_BAD_VALIDATION_CLASS,
  402.     WERROR_BAD_TOKEN_TYPE,
  403.     WERROR_NO_SECURITY_ON_OBJECT,
  404.     WERROR_CANT_ACCESS_DOMAIN_INFO,
  405.     WERROR_INVALID_SERVER_STATE,
  406.     WERROR_INVALID_DOMAIN_STATE,
  407.     WERROR_INVALID_DOMAIN_ROLE,
  408.     WERROR_NO_SUCH_DOMAIN,
  409.     WERROR_DOMAIN_EXISTS,
  410.     WERROR_DOMAIN_LIMIT_EXCEEDED,
  411.     WERROR_INTERNAL_DB_CORRUPTION,
  412.     WERROR_INTERNAL_ERROR,
  413.     WERROR_GENERIC_NOT_MAPPED,
  414.     WERROR_BAD_DESCRIPTOR_FORMAT,
  415.     WERROR_NOT_LOGON_PROCESS,
  416.     WERROR_LOGON_SESSION_EXISTS,
  417.     WERROR_NO_SUCH_PACKAGE,
  418.     WERROR_BAD_LOGON_SESSION_STATE,
  419.     WERROR_LOGON_SESSION_COLLISION,
  420.     WERROR_INVALID_LOGON_TYPE,
  421.     WERROR_CANNOT_IMPERSONATE,
  422.     WERROR_RXACT_INVALID_STATE,
  423.     WERROR_RXACT_COMMIT_FAILURE,
  424.     WERROR_SPECIAL_ACCOUNT,
  425.     WERROR_SPECIAL_GROUP,
  426.     WERROR_SPECIAL_USER,
  427.     WERROR_MEMBERS_PRIMARY_GROUP,
  428.     WERROR_TOKEN_ALREADY_IN_USE,
  429.     WERROR_NO_SUCH_ALIAS,
  430.     WERROR_MEMBER_NOT_IN_ALIAS,
  431.     WERROR_MEMBER_IN_ALIAS,
  432.     WERROR_ALIAS_EXISTS,
  433.     WERROR_LOGON_NOT_GRANTED,
  434.     WERROR_TOO_MANY_SECRETS,
  435.     WERROR_SECRET_TOO_LONG,
  436.     WERROR_INTERNAL_DB_ERROR,
  437.     WERROR_TOO_MANY_CONTEXT_IDS,
  438.     WERROR_LOGON_TYPE_NOT_GRANTED,
  439.     WERROR_NT_CROSS_ENCRYPTION_REQUIRED,
  440.     WERROR_NO_SUCH_MEMBER,
  441.     WERROR_INVALID_MEMBER,
  442.     WERROR_TOO_MANY_SIDS,
  443.     WERROR_LM_CROSS_ENCRYPTION_REQUIRED,
  444.     WERROR_NO_INHERITANCE,
  445.     WERROR_FILE_CORRUPT,
  446.     WERROR_DISK_CORRUPT,
  447.     WERROR_NO_USER_SESSION_KEY,
  448.     WERROR_LICENSE_QUOTA_EXCEEDED,
  449.     WERROR_INVALID_WINDOW_HANDLE                = 1400L,
  450.     WERROR_INVALID_MENU_HANDLE,
  451.     WERROR_INVALID_CURSOR_HANDLE,
  452.     WERROR_INVALID_ACCEL_HANDLE,
  453.     WERROR_INVALID_HOOK_HANDLE,
  454.     WERROR_INVALID_DWP_HANDLE,
  455.     WERROR_TLW_WITH_WSCHILD,
  456.     WERROR_CANNOT_FIND_WND_CLASS,
  457.     WERROR_WINDOW_OF_OTHER_THREAD,
  458.     WERROR_HOTKEY_ALREADY_REGISTERED,
  459.     WERROR_CLASS_ALREADY_EXISTS,
  460.     WERROR_CLASS_DOES_NOT_EXIST,
  461.     WERROR_CLASS_HAS_WINDOWS,
  462.     WERROR_INVALID_INDEX,
  463.     WERROR_INVALID_ICON_HANDLE,
  464.     WERROR_PRIVATE_DIALOG_INDEX,
  465.     WERROR_LISTBOX_ID_NOT_FOUND,
  466.     WERROR_NO_WILDCARD_CHARACTERS,
  467.     WERROR_CLIPBOARD_NOT_OPEN,
  468.     WERROR_HOTKEY_NOT_REGISTERED,
  469.     WERROR_WINDOW_NOT_DIALOG,
  470.     WERROR_CONTROL_ID_NOT_FOUND,
  471.     WERROR_INVALID_COMBOBOX_MESSAGE,
  472.     WERROR_WINDOW_NOT_COMBOBOX,
  473.     WERROR_INVALID_EDIT_HEIGHT,
  474.     WERROR_DC_NOT_FOUND,
  475.     WERROR_INVALID_HOOK_FILTER,
  476.     WERROR_INVALID_FILTER_PROC,
  477.     WERROR_HOOK_NEEDS_HMOD,
  478.     WERROR_GLOBAL_ONLY_HOOK,
  479.     WERROR_JOURNAL_HOOK_SET,
  480.     WERROR_HOOK_NOT_INSTALLED,
  481.     WERROR_INVALID_LB_MESSAGE,
  482.     WERROR_SETCOUNT_ON_BAD_LB,
  483.     WERROR_LB_WITHOUT_TABSTOPS,
  484.     WERROR_DESTROY_OBJECT_OF_OTHER_THREAD,
  485.     WERROR_CHILD_WINDOW_MENU,
  486.     WERROR_NO_SYSTEM_MENU,
  487.     WERROR_INVALID_MSGBOX_STYLE,
  488.     WERROR_INVALID_SPI_VALUE,
  489.     WERROR_SCREEN_ALREADY_LOCKED,
  490.     WERROR_HWNDS_HAVE_DIFF_PARENT,
  491.     WERROR_NOT_CHILD_WINDOW,
  492.     WERROR_INVALID_GW_COMMAND,
  493.     WERROR_INVALID_THREAD_ID,
  494.     WERROR_NON_MDICHILD_WINDOW,
  495.     WERROR_POPUP_ALREADY_ACTIVE,
  496.     WERROR_NO_SCROLLBARS,
  497.     WERROR_INVALID_SCROLLBAR_RANGE,
  498.     WERROR_INVALID_SHOWWIN_COMMAND,
  499.     WERROR_NO_SYSTEM_RESOURCES,
  500.     WERROR_NONPAGED_SYSTEM_RESOURCES,
  501.     WERROR_PAGED_SYSTEM_RESOURCES,
  502.     WERROR_WORKING_SET_QUOTA,
  503.     WERROR_PAGEFILE_QUOTA,
  504.     WERROR_COMMITMENT_LIMIT,
  505.     WERROR_MENU_ITEM_NOT_FOUND,
  506.     WERROR_EVENTLOG_FILE_CORRUPT                = 1500L,
  507.     WERROR_EVENTLOG_CANT_START,
  508.     WERROR_LOG_FILE_FULL,
  509.     WERROR_EVENTLOG_FILE_CHANGED,
  510.     WERROR_RPC_S_INVALID_STRING_BINDING         = 1700L,
  511.     WERROR_RPC_S_WRONG_KIND_OF_BINDING,
  512.     WERROR_RPC_S_INVALID_BINDING,
  513.     WERROR_RPC_S_PROTSEQ_NOT_SUPPORTED,
  514.     WERROR_RPC_S_INVALID_RPC_PROTSEQ,
  515.     WERROR_RPC_S_INVALID_STRING_UUID,
  516.     WERROR_RPC_S_INVALID_ENDPOINT_FORMAT,
  517.     WERROR_RPC_S_INVALID_NET_ADDR,
  518.     WERROR_RPC_S_NO_ENDPOINT_FOUND,
  519.     WERROR_RPC_S_INVALID_TIMEOUT,
  520.     WERROR_RPC_S_OBJECT_NOT_FOUND,
  521.     WERROR_RPC_S_ALREADY_REGISTERED,
  522.     WERROR_RPC_S_TYPE_ALREADY_REGISTERED,
  523.     WERROR_RPC_S_ALREADY_LISTENING,
  524.     WERROR_RPC_S_NO_PROTSEQS_REGISTERED,
  525.     WERROR_RPC_S_NOT_LISTENING,
  526.     WERROR_RPC_S_UNKNOWN_MGR_TYPE,
  527.     WERROR_RPC_S_UNKNOWN_IF,
  528.     WERROR_RPC_S_NO_BINDINGS,
  529.     WERROR_RPC_S_NO_PROTSEQS,
  530.     WERROR_RPC_S_CANT_CREATE_ENDPOINT,
  531.     WERROR_RPC_S_OUT_OF_RESOURCES,
  532.     WERROR_RPC_S_SERVER_UNAVAILABLE,
  533.     WERROR_RPC_S_SERVER_TOO_BUSY,
  534.     WERROR_RPC_S_INVALID_NETWORK_OPTIONS,
  535.     WERROR_RPC_S_NO_CALL_ACTIVE,
  536.     WERROR_RPC_S_CALL_FAILED,
  537.     WERROR_RPC_S_CALL_FAILED_DNE,
  538.     WERROR_RPC_S_PROTOCOL_ERROR,
  539.     WERROR_RPC_S_ERROR1729,
  540.     WERROR_RPC_S_UNSUPPORTED_TRANS_SYN,
  541.     WERROR_RPC_S_ERROR1731,
  542.     WERROR_RPC_S_UNSUPPORTED_TYPE,
  543.     WERROR_RPC_S_INVALID_TAG,
  544.     WERROR_RPC_S_INVALID_BOUND,
  545.     WERROR_RPC_S_NO_ENTRY_NAME,
  546.     WERROR_RPC_S_INVALID_NAME_SYNTAX,
  547.     WERROR_RPC_S_UNSUPPORTED_NAME_SYNTAX,
  548.     WERROR_RPC_S_ERROR1738,
  549.     WERROR_RPC_S_UUID_NO_ADDRESS,
  550.     WERROR_RPC_S_DUPLICATE_ENDPOINT,
  551.     WERROR_RPC_S_UNKNOWN_AUTHN_TYPE,
  552.     WERROR_RPC_S_MAX_CALLS_TOO_SMALL,
  553.     WERROR_RPC_S_STRING_TOO_LONG,
  554.     WERROR_RPC_S_PROTSEQ_NOT_FOUND,
  555.     WERROR_RPC_S_PROCNUM_OUT_OF_RANGE,
  556.     WERROR_RPC_S_BINDING_HAS_NO_AUTH,
  557.     WERROR_RPC_S_UNKNOWN_AUTHN_SERVICE,
  558.     WERROR_RPC_S_UNKNOWN_AUTHN_LEVEL,
  559.     WERROR_RPC_S_INVALID_AUTH_IDENTITY,
  560.     WERROR_RPC_S_UNKNOWN_AUTHZ_SERVICE,
  561.     WERROR_EPT_S_INVALID_ENTRY,
  562.     WERROR_EPT_S_CANT_PERFORM_OP,
  563.     WERROR_EPT_S_NOT_REGISTERED,
  564.     WERROR_RPC_S_NOTHING_TO_EXPORT,
  565.     WERROR_RPC_S_INCOMPLETE_NAME,
  566.     WERROR_RPC_S_INVALID_VERS_OPTION,
  567.     WERROR_RPC_S_NO_MORE_MEMBERS,
  568.     WERROR_RPC_S_NOT_ALL_OBJS_UNEXPORTED,
  569.     WERROR_RPC_S_INTERFACE_NOT_FOUND,
  570.     WERROR_RPC_S_ENTRY_ALREADY_EXISTS,
  571.     WERROR_RPC_S_ENTRY_NOT_FOUND,
  572.     WERROR_RPC_S_NAME_SERVICE_UNAVAILABLE,
  573.     WERROR_RPC_S_INVALID_NAF_ID,
  574.     WERROR_RPC_S_CANNOT_SUPPORT,
  575.     WERROR_RPC_S_NO_CONTEXT_AVAILABLE,
  576.     WERROR_RPC_S_INTERNAL_ERROR,
  577.     WERROR_RPC_S_ZERO_DIVIDE,
  578.     WERROR_RPC_S_ADDRESS_ERROR,
  579.     WERROR_RPC_S_FP_DIV_ZERO,
  580.     WERROR_RPC_S_FP_UNDERFLOW,
  581.     WERROR_RPC_S_FP_OVERFLOW,
  582.     WERROR_RPC_X_NO_MORE_ENTRIES,
  583.     WERROR_RPC_X_SS_CHAR_TRANS_OPEN_FAIL,
  584.     WERROR_RPC_X_SS_CHAR_TRANS_SHORT_FILE,
  585.     WERROR_RPC_X_SS_IN_NULL_CONTEXT,
  586.     WERROR_RPC_X_ERROR1776,
  587.     WERROR_RPC_X_SS_CONTEXT_DAMAGED,
  588.     WERROR_RPC_X_SS_HANDLES_MISMATCH,
  589.     WERROR_RPC_X_SS_CANNOT_GET_CALL_HANDLE,
  590.     WERROR_RPC_X_NULL_REF_POINTER,
  591.     WERROR_RPC_X_ENUM_VALUE_OUT_OF_RANGE,
  592.     WERROR_RPC_X_BYTE_COUNT_TOO_SMALL,
  593.     WERROR_RPC_X_BAD_STUB_DATA,
  594.     WERROR_INVALID_USER_BUFFER,
  595.     WERROR_UNRECOGNIZED_MEDIA,
  596.     WERROR_NO_TRUST_LSA_SECRET,
  597.     WERROR_NO_TRUST_SAM_ACCOUNT,
  598.     WERROR_TRUSTED_DOMAIN_FAILURE,
  599.     WERROR_TRUSTED_RELATIONSHIP_FAILURE,
  600.     WERROR_TRUST_FAILURE,
  601.     WERROR_RPC_S_CALL_IN_PROGRESS,
  602.     WERROR_NETLOGON_NOT_STARTED,
  603.     WERROR_ACCOUNT_EXPIRED,
  604.     WERROR_REDIRECTOR_HAS_OPEN_HANDLES,
  605.     WERROR_PRINTER_DRIVER_ALREADY_INSTALLED,
  606.     WERROR_UNKNOWN_PORT,
  607.     WERROR_UNKNOWN_PRINTER_DRIVER,
  608.     WERROR_UNKNOWN_PRINTPROCESSOR,
  609.     WERROR_INVALID_SEPARATOR_FILE,
  610.     WERROR_INVALID_PRIORITY,
  611.     WERROR_INVALID_PRINTER_NAME,
  612.     WERROR_PRINTER_ALREADY_EXISTS,
  613.     WERROR_INVALID_PRINTER_COMMAND,
  614.     WERROR_INVALID_DATATYPE,
  615.     WERROR_INVALID_ENVIRONMENT,
  616.     WERROR_RPC_S_NO_MORE_BINDINGS,
  617.     WERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT,
  618.     WERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT,
  619.     WERROR_NOLOGON_SERVER_TRUST_ACCOUNT,
  620.     WERROR_DOMAIN_TRUST_INCONSISTENT,
  621.     WERROR_SERVER_HAS_OPEN_HANDLES,
  622.     WERROR_RESOURCE_DATA_NOT_FOUND,
  623.     WERROR_RESOURCE_TYPE_NOT_FOUND,
  624.     WERROR_RESOURCE_NAME_NOT_FOUND,
  625.     WERROR_RESOURCE_LANG_NOT_FOUND,
  626.     WERROR_NOT_ENOUGH_QUOTA,
  627.     WERROR_RPC_S_NO_INTERFACES,
  628.     WERROR_RPC_S_CALL_CANCELLED,
  629.     WERROR_RPC_S_BINDING_INCOMPLETE,
  630.     WERROR_RPC_S_COMM_FAILURE,
  631.     WERROR_RPC_S_UNSUPPORTED_AUTHN_LEVEL,
  632.     WERROR_RPC_S_NO_PRINC_NAME,
  633.     WERROR_RPC_S_NOT_RPC_ERROR,
  634.     WERROR_RPC_S_UUID_LOCAL_ONLY,
  635.     WERROR_RPC_S_SEC_PKG_ERROR,
  636.     WERROR_RPC_S_NOT_CANCELLED,
  637.     WERROR_RPC_X_INVALID_ES_ACTION,
  638.     WERROR_RPC_X_WRONG_ES_VERSION,
  639.     WERROR_RPC_X_WRONG_STUB_VERSION,
  640.     WERROR_RPC_S_GROUP_MEMBER_NOT_FOUND         = 1898L,
  641.     WERROR_EPT_S_CANT_CREATE,
  642.     WERROR_RPC_S_INVALID_OBJECT,
  643.     WERROR_INVALID_TIME,
  644.     WERROR_INVALID_FORM_NAME,
  645.     WERROR_INVALID_FORM_SIZE,
  646.     WERROR_ALREADY_WAITING,
  647.     WERROR_PRINTER_DELETED,
  648.     WERROR_INVALID_PRINTER_STATE,
  649.     WERROR_PASSWORD_MUST_CHANGE,
  650.     WERROR_DOMAIN_CONTROLLER_NOT_FOUND,
  651.     WERROR_ACCOUNT_LOCKED_OUT,
  652.     WERROR_INVALID_PIXEL_FORMAT                 = 2000L,
  653.     WERROR_BAD_DRIVER,
  654.     WERROR_INVALID_WINDOW_STYLE,
  655.     WERROR_METAFILE_NOT_SUPPORTED,
  656.     WERROR_TRANSFORM_NOT_SUPPORTED,
  657.     WERROR_CLIPPING_NOT_SUPPORTED,
  658.     WERROR_BAD_USERNAME                         = 2202L,
  659.     WERROR_NOT_CONNECTED                        = 2250L,
  660.     WERROR_OPEN_FILES                           = 2401L,
  661.     WERROR_ACTIVE_CONNECTIONS,
  662.     WERROR_DEVICE_IN_USE                        = 2404L,
  663.     WERROR_UNKNOWN_PRINT_MONITOR                = 3000L,
  664.     WERROR_PRINTER_DRIVER_IN_USE,
  665.     WERROR_SPOOL_FILE_NOT_FOUND,
  666.     WERROR_SPL_NO_STARTDOC,
  667.     WERROR_SPL_NO_ADDJOB,
  668.     WERROR_PRINT_PROCESSOR_ALREADY_INSTALLED,
  669.     WERROR_PRINT_MONITOR_ALREADY_INSTALLED,
  670.     WERROR_WINS_INTERNAL                        = 4000L,
  671.     WERROR_CAN_NOT_DEL_LOCAL_WINS,
  672.     WERROR_STATIC_INIT,
  673.     WERROR_INC_BACKUP,
  674.     WERROR_FULL_BACKUP,
  675.     WERROR_REC_NON_EXISTENT,
  676.     WERROR_RPL_NOT_ALLOWED,
  677.     WERROR_NO_BROWSER_SERVERS_FOUND             = 6118L,
  678.     WERROR_UNKNOWN                              = 0x2FFFFFFFL,
  679. };
  680.  
  681. typedef struct WErrorStruct {
  682.     WULong                      errorCode;
  683.     WString                     message;
  684. } WErrorStruct;
  685.  
  686. /*************************************************************************
  687.  *
  688.  * WError -- Base Error class
  689.  *
  690.  *   Events:
  691.  *
  692.  *************************************************************************/
  693.  
  694. class WCMCLASS WError {
  695.     WDeclareName( WError );
  696.  
  697.     public:
  698.  
  699.         /**************************************************************
  700.          * Constructors and destructors
  701.          **************************************************************/
  702.     
  703.         WError();
  704.  
  705.         virtual ~WError();
  706.  
  707.         /**************************************************************
  708.          * Static Properties
  709.          **************************************************************/
  710.  
  711.         // ErrorLogFile
  712.  
  713.         static void  SetErrorLogFile( const char * fileName );
  714.  
  715.         // LastError
  716.  
  717.         static void SetLastError( WULong errorCode );
  718.         static WULong GetLastError();
  719.         static void GetLastError( WErrorStruct & error );
  720.  
  721.         /**************************************************************
  722.          * Static Methods
  723.          **************************************************************/
  724.  
  725.         // IsError
  726.  
  727.         static WBool IsError();
  728.  
  729.         // UpdateErrorLogFile
  730.  
  731.         static void UpdateErrorLogFile( const WChar * file, WLong line );
  732.  
  733.         /**************************************************************
  734.          * Others
  735.          **************************************************************/
  736. };
  737.  
  738. #ifndef _WNO_PRAGMA_PUSH
  739. #pragma enum pop;
  740. #pragma pack(pop);
  741. #endif
  742.  
  743. #endif // _WERROR_HPP_INCLUDED
  744.