Acknowledgment Messages

An acknowledgment message indicates a positive or negative acknowledgment. The following table lists the message properties that have special meaning when attached to an acknowledgment message.

Note  Connector applications must set these properties when sending positive (including read receipt messages) and negative acknowledgment messages back to the sending application.

Message Property
(ActiveX property)
Setting
PROPID_M_ACKNOWLEDGE
(Ack)
None.
PROPID_M_ADMIN_QUEUE
(AdminQueueInfo)
Null.
PROPID_M_APPSPECIFIC
(AppSpecific)
Same as original message.
PROPID_M_BODY
(Body)
For positive acknowledgment messages, the body of the acknowledgment message is empty. You must refer to the original message to see the message body.

For negative acknowledgment messages (with the exception of private, encrypted messages) the body of the acknowledgment message contains the message body of the original message.

PROPID_M_CLASS
(Class)
Specifies the appropriate positive or negative acknowledgment class.
PROPID_M_CORRELATIONID
(CorrelationId)
Specifies the original application message identifier (the PROPID_M_MSGID of the original message). If the correlation identifier of the original message contained an application-defined identifier, that information is not included in the acknowledgment message.
PROPID_M_DELIVERY
(Delivery)
Same as original message.
PROPID_M_EXTENSION Same as original message.
PROPID_M_JOURNAL
(Journal)
Same as original message.
PROPID_M_LABEL
(Label)
Same as original message.
PROPID_M_MSGID
(id)
Message identifier for the acknowledgment message.
PROPID_M_PRIORITY
(Priority)
Same as original message.
PROPID_M_RESP_QUEUE
(ResponseQueueInfo)
Target queue of the original message.
PROPID_M_TIME_TO_BE_RECEIVED
(MaxTimeToReceive)
Set to maximum time allowed by MSMQ.
PROPID_M_TIME_TO_REACH_QUEUE
(MaxTimeToReachQueue)
Set to maximum time allowed by MSMQ.

Positive Acknowledgment Classes

MSMQ generates the following classes of positive acknowledgment messages:

Negative Arrival Acknowledgment Classes

MSMQ generates the following classes of negative acknowledgment messages if the message fails to arrive at the queue:

Negative Read Acknowledgment Classes

MSMQ generates the following classes of negative acknowledgment messages if the original message in the queue could not be read:

For an example of returning acknowledgment messages, see: