Important: |
---|
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist. |
This property specifies the source journaling level for the message.
The source journaling level specifies if a copy of the message should be kept in a machine journal (on the originating machine), sent to a dead-letter queue, or neither.
- Type Indicator
-
VT_UI1
- PROPVARIANT Field
-
bVal
- Property Values
-
This property can be set to one or more of the following values.
Value Description MQMSG_DEADLETTER
For nontransactional messages, the message is sent to the nontransactional dead-letter queue on the computer that could not deliver the message (for example, if a message timer expires).
For transactional messages, the message is sent to the transactional dead-letter queue on the source machine in all negative and in-doubt cases.
For MSMQ 1.0 and 2.0 differences, see the Remarkssection.
MQMSG_JOURNAL
When the message is transmitted (from the originating machine to the next hop), it is kept in a machine journal on the originating machine.
MQMSG_JOURNAL_NONE
The default. The message is not kept in the machine journal of the originating machine.
Remarks
PROPID_M_JOURNAL does not create a queue.
Machine journals and dead-letter queues are system queues generated by MSMQ.
When you store messages in a journal or dead-letter queue, clear these queues periodically to remove messages that are no longer needed.
Messages stored in a journal and dead-letter queues count against the quota for the computer where the queues reside (the computer quota is set by the administrator).
Keep in mind the following differences between MSMQ 1.0 and MSMQ 2.0:
- In MSMQ 1.0, this property is ignored for transactional
messages; all transactional messages not confirmed by MSMQ are sent
to the dead-letter queue.
- In MSMQ 2.0, this property is not ignored. The default of the
PROPID_M_JOURNAL property is MQMSG_JOURNAL_NONE (undelivered
transactional messages are not sent to the dead-letter queue).
To use the transaction confirmation process provided by MSMQ, specify MQMSG_DEADLETTER.
To use a machine journal or dead-letter queue, specify PROPID_M_JOURNAL in the MQMSGPROPSstructure and call MQSendMessage.
To retrieve the journaling level of a message, specify PROPID_M_JOURNAL in the MQMSGPROPSstructure. Then call MQReceiveMessageand examine the returned value.
Examples
This example shows how PROPID_M_JOURNAL is specified in the MQMSGPROPSstructure.
Copy Code | |
---|---|
aMsgPropId[i] = PROPID_M_JOURNAL; // Property ID aMsgPropVar[i].vt = VT_UI1; // Type indicator MsgProps.aPropVar[i].bVal = MQMSG_JOURNAL; // Value i++; |
Note: |
---|
OS versions prior to 2.12 require the MSMQ add-on pack. |
Requirements
Header | mq.h |
Windows Embedded CE | Windows CE 2.0 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |