no way to compare when less than two revisions
Differences
This shows you the differences between two versions of the page.
Next revision | |||
— | en:docs:fapi:dosinsmessage [2018/08/31 09:11] – created prokushev | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | |||
+ | This call inserts variable text string information into the body of a message. This is useful when messages are loaded before insertion text strings are known. | ||
+ | |||
+ | ==Syntax== | ||
+ | | ||
+ | |||
+ | ==Parameters== | ||
+ | ;IvTable (PCHAR FAR *) - input : List of double-word pointers. Each pointer points to an ASCIIZ or null terminated DBCS string (variable insertion text). 0 to 9 strings can be present. | ||
+ | ; IvCount (USHORT) - input : 0-9 is the count of variable insertion text strings. If IvCount is 0, IvTable is ignored. | ||
+ | ; MsgInput (PSZ) - input : Address of the input message. | ||
+ | ; MsgInLength (USHORT) - input : Length, in bytes, of the input message. | ||
+ | ; DataArea (PCHAR) - output : Address of the user storage that returns the updated message. If the message is too long to fit in the caller' | ||
+ | ; DataLength (USHORT) - input : Length, in bytes, of the user's storage area. | ||
+ | ; MsgLength (PUSHORT) - output : Address of the length, in bytes, of the updated message. | ||
+ | |||
+ | ==Return Code== | ||
+ | rc (USHORT) - return | ||
+ | Return code descriptions are: | ||
+ | * 0 NO_ERROR | ||
+ | * 316 ERROR_MR_MSG_TOO_LONG | ||
+ | * 320 ERROR_MR_INV_IVCOUNT | ||
+ | |||
+ | ==Remarks== | ||
+ | DosInsMessage returns an error indicating that IvCount is out of range when IvCount is greater than 9. A default message is also placed in the caller' | ||
+ | %x sequence for %1through%9 is less than or equal to IvCount, then text insertion, by substitution for %x, is performed for all occurrences of %x in the body of the message. Otherwise text insertion is ignored and the %x sequence is returned unchanged in the message. Text insertion is performed for all text strings defined by IvCount and IvTable. | ||
+ | |||
+ | Variable data insertion does not depend on a blank character delimiter nor are blanks automatically inserted. | ||
+ | |||
+ | ==Example Code== | ||
+ | ===C Binding=== | ||
+ | <PRE> | ||
+ | #define INCL_DOSMISC | ||
+ | |||
+ | USHORT | ||
+ | | ||
+ | |||
+ | PCHAR FAR * IvTable; | ||
+ | USHORT | ||
+ | PSZ MsgInput; | ||
+ | USHORT | ||
+ | PCHAR DataArea; | ||
+ | USHORT | ||
+ | PUSHORT | ||
+ | |||
+ | USHORT | ||
+ | </ | ||
+ | |||
+ | ===MASM Binding=== | ||
+ | <PRE> | ||
+ | EXTRN DosInsMessage: | ||
+ | INCL_DOSMISC | ||
+ | |||
+ | PUSH@ OTHER | ||
+ | PUSH | ||
+ | PUSH@ ASCIIZ | ||
+ | PUSH | ||
+ | PUSH@ OTHER | ||
+ | PUSH | ||
+ | PUSH@ WORD MsgLength | ||
+ | CALL | ||
+ | |||
+ | Returns WORD | ||
+ | </ | ||
+ | |||
+ | ====== Note ====== | ||
+ | |||
+ | Text based on [[http:// | ||
+ | |||
+ | {{page> | ||
+ | |||