バイト・メッセージの本文には、バイトのストリームが含まれています。本文には、データ名やデータ型の情報は含まれずに実際のデータのみが含まれており、このデータを解釈する役割は送受信するアプリケーションに全面的に委ねられています。
バイト・メッセージは、XMS アプリケーションが、XMS または JMS アプリケーション・プログラミング・インターフェースを使用していないアプリケーションとメッセージを交換する必要がある場合に特に役立ちます。
アプリケーションがバイト・メッセージを作成した後のメッセージの本文は、書き込み専用です。アプリケーションは、C または C++ の場合には BytesMessage クラスの適切な書き込みメソッドを、.NET の場合には IBytesMessage インターフェースの適切な書き込みメソッドを呼び出すことにより、アプリケーション・データを本文にアセンブルします。アプリケーションが値をバイト・メッセージ・ストリームに書き込むたびに、その値は、アプリケーションによって書き込まれた前の値の直後にアセンブルされます。XMS は、アセンブルされた最後のバイトの位置を記憶するために内部のカーソルを維持しています。
アプリケーションがメッセージを送信すると、メッセージの本文は読み取り専用になります。このモードのとき、アプリケーションはメッセージの送信を複数回実行することができます。
アプリケーションがバイト・メッセージを受信するときのメッセージの本文は、読み取り専用です。アプリケーションは、BytesMessage クラスまたは IBytesMessage インターフェースの適切な読み取りメソッドを使用して、バイト・メッセージ・ストリームのコンテンツを読み取ることができます。アプリケーションはバイトを順番に読み取り、XMS は、読み取られた最後のバイトの位置を記憶するために内部のカーソルを維持しています。
C のみを使用する場合、アプリケーションは、value パラメーターの NULL ポインター、またはアプリケーションが xmsBytesMsgReadBytes() を呼び出す場合には buffer パラメーターの NULL ポインターを使用して読み取り関数を呼び出すことにより、バイトを読み取らずにスキップオーバーすることができます。ストリングのスキップオーバーの方法について詳しくは、xmsBytesMsgReadUTF – UTF ストリングの読み取りを参照してください。
バイト・メッセージの本文が書き込み専用のときに、アプリケーションが BytesMessage クラスまたは IBytesMessage インターフェースの Reset メソッドを呼び出すと、本文は読み取り専用になります。このメソッドはまた、バイト・メッセージ・ストリームの先頭でカーソルを位置変更します。
バイト・メッセージの本文が読み取り専用のときに、C または C++ の場合には Message クラスの Clear Body メソッドを、または .NET の場合には IMessage インターフェースの Clear Body メソッドをアプリケーションが呼び出すと、本文は書き込み専用になります。このメソッドにより、本文もクリアされます。