Sends a long data message to a queue.
BOOLEAN SendRtLongDataMessage(
RTHANDLE hQueue,
LPVOID msg,
DWORD msgLength,
DWORD msWait,
DWORD dwUserParam);
Parameters
hQueue
- A handle for a valid queue object.
msg
- A pointer to the data message.
msgLength
- The number of bytes in the data message.
msWait
- The number of milliseconds to wait for the message to be entirely transferred. The calling thread sleeps until the number of milliseconds elapses, or the entire long message has been completely transferred. If the send times out, then the transaction is canceled internally and the sender may reuse the message buffer. Note the value is converted to by the kernel.
dwUserParam
- A user-defined value which is passed to the receiver in the MSG_DESCRIPTOR structure. It is not used by the operating system in any way and may be used by the user for any purpose.
Remarks
Note: In the case where the sending and receiving process are each on a different node, at least one of the processes (sender or receiver) must be on the same node as the queue object.
Returns
Returns TRUE on success. Returns FALSE on failure. Call
GetLastRtError() to find the failure status. Possible status values include:
E_EXIST |
The hQueue parameter does not refer to an existing object |
E_TYPE |
The hQueue parameter does not refer to a valid message queue object. |
E_CANCELLED |
The receiver canceled the request to send the long message. |
E_BAD_ADDR |
The msg parameter is not a valid pointer. |
E_TIME |
The operation timed out or the illegal timeout value 0 was given for the msWait parameter. |
E_PARAM |
The msgLength parameter is less than the message threshold for this queue, or the time value is invalid. |
Requirements
Versions |
Defined in |
Include |
Link to |
INtime 5.0 |
intime/rt/include/rtbase.h |
rt.h |
rt.lib |
See Also