Introduction to Virtual Device Drivers



Download 274.5 Kb.
Page78/80
Date19.01.2022
Size274.5 Kb.
#58083
1   ...   72   73   74   75   76   77   78   79   80
VXDS

Reference


This section provides detailed reference information for the message macros. The information is separated into the following functional groups.

Group

Elements

Message Declaration Macros

DECLARE_MESSAGE, LONG_MESSAGE, LONG_MESSAGE_END, LONG_MESSAGE_START, VxD_IMESSAGE_ENDS, VxD_IMESSAGE_SEG, VxD_MESSAGE_ENDS, VxD_MESSAGE_SEG

Message Usage Macros

GET_MESSAGE_PTR, POP_SPRINTF, PUSH_SPRINTF, PUSHED_SPRINTF_LENGTH


Message Declaration Macros


The following contains information on macros for declaring messages.

DECLARE_MESSAGE

DECLARE_MESSAGE MsgIdentifier, String


Creates a single message having the given message identifier.

 No return value.



MsgIdentifier

Message identifier. This must be a unique constant name.



String

Null-terminated string specifying the message. The string may contain parameter placeholders as described in PUSH_SPRINTF.

See also PUSH_SPRINTF

LONG_MESSAGE

LONG_MESSAGE String


Declares a portion of a long message. This macro can be used consecutively any number of times, but all uses for a particular string must be contained within a single long message block, as defined by a LONG_MESSAGE_START and LONG_MESSAGE_END macro pair.

 No return value.



String

Message string.

See also LONG_MESSAGE_END, LONG_MESSAGE_START

LONG_MESSAGE_END

LONG_MESSAGE_END MsgIdentifier


Completes the message started with the LONG_MESSAGE_START macro.

 No return value.



MsgIdentifier

Message identifier. This must be the same name given with the matching LONG_MESSAGE_START macro.

See also LONG_MESSAGE_START

LONG_MESSAGE_START

LONG_MESSAGE_START MsgIdentifier


Starts a long message declaration block. The block must end with a LONG_MESSAGE_END macro and may contain one or more LONG_MESSAGE macros.

 No return value.



MsgIdentifier

Message identifier. This must be a unique constant name.

See also LONG_MESSAGE, LONG_MESSAGE_END

VxD_IMESSAGE_ENDS

VxD_IMESSAGE_ENDS


Ends the message table in the initialization data segment. Subsequent VXD_IMESSAGE_SEG macros are not valid.

See also VXD_IMESSAGE_SEG



VxD_IMESSAGE_SEG

VxD_IMESSAGE_SEG


Starts a message table in the initialization data segment of a VxD. The messages in the table must be defined using DECLARE_MESSAGE and LONG_MESSAGE macros. These messages are discarded after the VxD has been initialized. The VxD_IMESSAGE_ENDS macro must be used to end the message table.

See also VXD_IMESSAGE_ENDS



VXD_MESSAGE_ENDS

VXD_MESSAGE_ENDS


Ends the message table in the locked data segment. Subsequent VXD_MESSAGE_SEG macros are not valid.

See also VXD_MESSAGE_SEG



VXD_MESSAGE_SEG

VXD_MESSAGE_SEG


Starts a message table in the locked data segment of a VxD. The messages in the table must be defined using DECLARE_MESSAGE and LONG_MESSAGE macros. The VxD_MESSAGE_ENDS macro must be used to end the message table.

See also DECLARE_MESSAGE, LONG_MESSAGE, VXD_IMESSAGE_ENDS



VXD_PMESSAGE_ENDS

VXD_PMESSAGE_ENDS


Ends the message table in the pageable data segment. Subsequent VXD_PMESSAGE_SEG macros are not valid.

See also VXD_MESSAGE_SEG



VXD_PMESSAGE_SEG

VXD_PMESSAGE_SEG


Starts a message table in the pageable data segment of a VxD. The messages in the table must be defined using DECLARE_MESSAGE and LONG_MESSAGE macros. The VxD_PMESSAGE_ENDS macro must be used to end the message table.

See also DECLARE_MESSAGE, LONG_MESSAGE, VXD_IMESSAGE_ENDS



Download 274.5 Kb.

Share with your friends:
1   ...   72   73   74   75   76   77   78   79   80




The database is protected by copyright ©ininet.org 2024
send message

    Main page