home *** CD-ROM | disk | FTP | other *** search
- /*
- Microsoft Developer Support
- Copyright (c) 1992-1997 Microsoft Corporation
-
- This file contains the message definitions for the Win32
- messages.exe sample program.
- -------------------------------------------------------------------------
- HEADER SECTION
-
- The header section defines names and language identifiers for use
- by the message definitions later in this file. The MessageIdTypedef,
- SeverityNames, FacilityNames, and LanguageNames keywords are
- optional and not required.
-
-
-
- The MessageIdTypedef keyword gives a typedef name that is used in a
- type cast for each message code in the generated include file. Each
- message code appears in the include file with the format: #define
- name ((type) 0xnnnnnnnn) The default value for type is empty, and no
- type cast is generated. It is the programmer's responsibility to
- specify a typedef statement in the application source code to define
- the type. The type used in the typedef must be large enough to
- accomodate the entire 32-bit message code.
-
-
-
- The SeverityNames keyword defines the set of names that are allowed
- as the value of the Severity keyword in the message definition. The
- set is delimited by left and right parentheses. Associated with each
- severity name is a number that, when shifted left by 30, gives the
- bit pattern to logical-OR with the Facility value and MessageId
- value to form the full 32-bit message code. The default value of
- this keyword is:
-
- SeverityNames=(
- Success=0x0
- Informational=0x1
- Warning=0x2
- Error=0x3
- )
-
- Severity values occupy the high two bits of a 32-bit message code.
- Any severity value that does not fit in two bits is an error. The
- severity codes can be given symbolic names by following each value
- with :name
-
-
-
- The FacilityNames keyword defines the set of names that are allowed
- as the value of the Facility keyword in the message definition. The
- set is delimited by left and right parentheses. Associated with each
- facility name is a number that, when shift it left by 16 bits, gives
- the bit pattern to logical-OR with the Severity value and MessageId
- value to form the full 32-bit message code. The default value of
- this keyword is:
-
- FacilityNames=(
- System=0x0FF
- Application=0xFFF
- )
-
- Facility codes occupy the low order 12 bits of the high order
- 16-bits of a 32-bit message code. Any facility code that does not
- fit in 12 bits is an error. This allows for 4,096 facility codes.
- The first 256 codes are reserved for use by the system software. The
- facility codes can be given symbolic names by following each value
- with :name
-
-
- The LanguageNames keyword defines the set of names that are allowed
- as the value of the Language keyword in the message definition. The
- set is delimited by left and right parentheses. Associated with each
- language name is a number and a file name that are used to name the
- generated resource file that contains the messages for that
- language. The number corresponds to the language identifier to use
- in the resource table. The number is separated from the file name
- with a colon.
-
-
- Any new names in the source file which don't override the built-in
- names are added to the list of valid languages. This allows an
- application to support private languages with descriptive names.
-
-
- -------------------------------------------------------------------------
- MESSAGE DEFINITION SECTION
-
- Following the header section is the body of the Message Compiler
- source file. The body consists of zero or more message definitions.
- Each message definition begins with one or more of the following
- statements:
-
- MessageId = [number|+number]
- Severity = severity_name
- Facility = facility_name
- SymbolicName = name
-
- The MessageId statement marks the beginning of the message
- definition. A MessageID statement is required for each message,
- although the value is optional. If no value is specified, the value
- used is the previous value for the facility plus one. If the value
- is specified as +number then the value used is the previous value
- for the facility, plus the number after the plus sign. Otherwise, if
- a numeric value is given, that value is used. Any MessageId value
- that does not fit in 16 bits is an error.
-
- The Severity and Facility statements are optional. These statements
- specify additional bits to OR into the final 32-bit message code. If
- not specified they default to the value last specified for a message
- definition. The initial values prior to processing the first message
- definition are:
-
- Severity=Success
- Facility=Application
-
- The value associated with Severity and Facility must match one of
- the names given in the FacilityNames and SeverityNames statements in
- the header section. The SymbolicName statement allows you to
- associate a C/C++ symbolic constant with the final 32-bit message
- code.
- */
- //
- // Values are 32 bit values layed out as follows:
- //
- // 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1
- // 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
- // +---+-+-+-----------------------+-------------------------------+
- // |Sev|C|R| Facility | Code |
- // +---+-+-+-----------------------+-------------------------------+
- //
- // where
- //
- // Sev - is the severity code
- //
- // 00 - Success
- // 01 - Informational
- // 10 - Warning
- // 11 - Error
- //
- // C - is the Customer code flag
- //
- // R - is a reserved bit
- //
- // Facility - is the facility code
- //
- // Code - is the facility's status code
- //
- //
- // Define the facility codes
- //
- #define FACILITY_SYSTEM 0x0
- #define FACILITY_STUBS 0x3
- #define FACILITY_RUNTIME 0x2
- #define FACILITY_IO_ERROR_CODE 0x4
-
-
- //
- // Define the severity codes
- //
- #define STATUS_SEVERITY_WARNING 0x2
- #define STATUS_SEVERITY_SUCCESS 0x0
- #define STATUS_SEVERITY_INFORMATIONAL 0x1
- #define STATUS_SEVERITY_ERROR 0x3
-
-
- //
- // MessageId: MSG_BAD_COMMAND
- //
- // MessageText:
- //
- // You have chosen an incorrect command.
- //
- #define MSG_BAD_COMMAND ((DWORD)0xC0020001L)
-
- //
- // MessageId: MSG_BAD_PARM1
- //
- // MessageText:
- //
- // Cannot reconnect to the server.
- //
- #define MSG_BAD_PARM1 ((DWORD)0x80040002L)
-
- //
- // MessageId: MSG_STRIKE_ANY_KEY
- //
- // MessageText:
- //
- // Press any key to continue . . . %0
- //
- #define MSG_STRIKE_ANY_KEY ((DWORD)0x00000003L)
-
- //
- // MessageId: MSG_CMD_DELETE
- //
- // MessageText:
- //
- // File %1 contains %2 which is in error
- //
- #define MSG_CMD_DELETE ((DWORD)0xC0000004L)
-
- //
- // MessageId: MSG_RETRYS
- //
- // MessageText:
- //
- // There have been %1!d! retrys with %2!d!%% success%! Disconnect from%
- // the server and retry later.
- //
- #define MSG_RETRYS ((DWORD)0x00000005L)
-
-