Property Values

A property structure often contains three types of properties: IN properties, OUT properties, and IN/OUT properties.

Properties appear in no particular order in the aPropVar array. To determine the type of a property, MSMQ examines the property identifier and the function called. For example, for API functions, the queue quota property (PROPID_Q_QUOTA) is an OUT property when MQGetQueueProperties is called, and an IN property when MQSetQueueProperties is called.

IN properties can be set to any valid setting for the specific property. However, VT_NULL cannot be used as an IN property VARTYPE value.

OUT properties returned by MSMQ require an PROPVARIANT entry where the returned value can be stored. For example, space must be allocated before the label of a queue or the body of a message can be specified. There are two ways for the application to specify such an PROPVARIANT entry:

For queue and queue manager properties whose field type is VT_LPWSTR, their VARTYPE must be set to VT_NULL.

In all cases where MSMQ allocates a buffer for the MSMQ application, it is the application's responsibility to free the memory with the MQFreeMemory function.


© 1997 by Microsoft Corporation. All rights reserved.