INtime SDK Help
SendRtLongDataMessage
INtime SDK v6 > About INtime > INtime Kernel > Message Queues > SendRtLongDataMessage

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 high-level ticks 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