Table of Contents
Input Message File Format
The input message file is a standard ASCII file containing three types of lines:
- Comment lines
- Component identifier line
- Component message lines
Comment Lines
Comments may appear anywhere in the file except between the component identifier line and the first message line.
A comment line must begin with a semicolon (;) in the first column.
Example:
; This is a sample of an input ; message file for component DOS ; starting with three comment lines.
Component Identifier Line
A single line holding the three‑character component identifier. This identifier is prefixed to all message numbers.
In the example, the identifier is DOS.
Component Message Lines
Each message line consists of a message header followed by the ASCII text of the message.
Message Header
The header is composed of the following fields, written contiguously:
- Three‑character component identifier (e.g.,
DOS). - Four‑digit message number (e.g.,
0100). - A single character indicating the message type (see table below).
- A colon (':').
- A single blank space separating the header from the message text.
Format: COMPNNNNT: message text
Message Types
| Code | Type | Meaning |
|---|---|---|
| E | Error | Error message |
| H | Help | Help text |
| I | Information | Informational message |
| P | Prompt | Prompt (user input expected) |
| W | Warning | Warning message |
| ? | (unused) | Placeholder for a number with no message text |
Numbering and Placeholder Entries
- Message numbers may start at any value, but must appear in strictly ascending sequential order in the file.
- When a particular number is not used, a placeholder entry is required. A placeholder consists of the full header with the type
?and no message text after the colon and blank.
Example: MAB0101?:
Special Characters in the Message Text
The percent sign (%) has special meaning when used inside message text.
Suppressing the Trailing Newline (''%0'')
If the sequence %0 appears as the very last characters of a message text, the DosGetMessage API will not append a carriage return and line feed (CR+LF). This is typically used for prompts so that user input can follow on the same line.
Inserting Variable Strings (''%1'' – ''%9'')
Sequences %1 through %9 mark positions where variable strings are inserted at runtime. The actual values are provided via the Itable and IvCount parameters of the DosGetMessage call.
Example: the message %1 files copied will have %1 replaced by an appropriate string (e.g., a number of files).
Complete Input File Example
; This is a sample of an input ; message file for component MAB ; starting with three comment lines. MAB MAB0100E: File not found MAB0101?: MAB0102H: Usage: del [drive:][path] filename MAB0103?: MAB0104I: %1 files copied MAB0105W: Warning! All data will be destroyed! MAB0106?: MAB0107?: MAB0108P: Do you wish to apply these patches (Y or N)? %0 MAB0109E: Divide overflow
MAB– component identifier.MAB0100E– error message.MAB0101?– placeholder for an unused number.MAB0104I– informational message with variable insertion (%1).MAB0108P– prompt with%0to suppress the trailing newline.




