MsgHandle (MQHMSG)
If
the MQGMO_PROPERTIES_AS_Q_DEF option is specified and the PropertyControl
queue
attribute is not set to MQPROP_FORCE_MQRFH2 then this is
the handle to a message which will be populated with the properties
of the message being retrieved from the queue. The handle is created
by an MQCRTMH call. Any properties already associated with the handle will be cleared
before retrieving a message.
MQHM_NONE
No message handle supplied.
No message descriptor is required on the MQGET call if a valid message handle is supplied and used on output to contain the message properties, the message descriptor associated with the message handle is used for input fields.
If a message descriptor is specified on the MQGET call, it always takes precedence over the message descriptor associated with a message handle.
If MQGMO_PROPERTIES_FORCE_MQRFH2 is
specified, or the MQGMO_PROPERTIES_AS_Q_DEF is specified
and the PropertyControl
queue
attribute is MQPROP_FORCE_MQRFH2 then the call fails with
reason code MQRC_MD_ERROR when no message descriptor parameter
is specified.
On return from the MQGET call, the properties and message descriptor associated with this message handle are updated to reflect the state of the message retrieved (as well as the message descriptor if one was supplied on the MQGET call). The properties of the message can then be inquired using the MQINQMP call.
Except for message descriptor extensions, when present, a property that can be inquired with the MQINQMP call is not contained in the message data; if the message on the queue contained properties in the message data these are removed from the message data before the data is returned to the application.
If no message handle
is provided or Version is less than MQGMO_VERSION_4 then
you must supply a valid message descriptor on the MQGET call. Any
message properties (except those contained in the message descriptor)
are returned in the message data subject to the value of the property
options in the MQGMO structure and the PropertyControl
queue
attribute.
This is an always an input field. The initial value
of this field is MQHM_NONE. This field is ignored if Version
is
less than MQGMO_VERSION_4.