IWSDMessageParameters
COM公式ドキュメント
このインターフェイスは、メッセージ固有の情報をプロトコルスタックの上位および下位へ伝達するために使用します。
解説(Remarks)
要求と応答のメッセージパターンでは、パラメーターは、特定の要求に対する応答メッセージをどこへ送信すべきかをトランスポートが判断する手段も提供します。これを可能にするため、要求のメッセージパラメーターは、対応する応答とともに常にスタックの下位へ渡される必要があります。
メッセージパラメーターは要求または応答のいずれにもパッケージ化でき、送信も受信もされるため、ローカルアドレスとリモートアドレスの意味は、メッセージパラメーターの方向によって異なります。
メソッド 5
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
メッセージを受信したローカルアドレスを表す汎用アドレスオブジェクトを取得します。
| ppAddress | IWSDAddress** | out | メッセージを受信したローカルアドレスを表す IWSDAddress インターフェイスです。 |
戻り値
このメソッドは、次の値のいずれかを返すことがあります。
返される可能性のある値には、以下のものが含まれますが、これらに限定されません。
| 戻り値 | 説明 |
|---|---|
| メソッドは正常に完了しました。 | |
| ppAddress が NULL です。 |
解説(Remarks)
ppAddress に割り当てられたメモリの解放は、呼び出し元の責任です。
メッセージを送信する送信元アドレスを表す汎用アドレスオブジェクトを設定します。
| pAddress | IWSDAddress* | in | メッセージを送信する送信元アドレスを表す IWSDAddress インターフェイスです。 |
戻り値
メッセージの送信元となったリモートアドレスを表す汎用アドレスオブジェクトを取得します。
| ppAddress | IWSDAddress** | out | メッセージの送信元となったリモートアドレスを表す IWSDAddress インターフェイスです。 |
戻り値
このメソッドは、次の値のいずれかを返すことがあります。
返される可能性のある値には、以下のものが含まれますが、これらに限定されません。
| 戻り値 | 説明 |
|---|---|
| メソッドは正常に完了しました。 | |
| ppAddress が NULL です。 |
解説(Remarks)
ppAddress に割り当てられたメモリの解放は、呼び出し元の責任です。
メッセージの送信先となるリモートアドレスを表す汎用アドレスオブジェクトを設定します。
| pAddress | IWSDAddress* | in | メッセージの送信先となるリモートアドレスを表す IWSDAddress インターフェイスです。 |
戻り値
プロトコルスタックにおいて、この層の下位の層からメッセージパラメーターを取得します。
| ppTxParams | IWSDMessageParameters** | out | メッセージ固有の情報をプロトコルスタックの上位および下位へ伝達するために使用する IWSDMessageParameters インターフェイスです。 |
戻り値
このメソッドは、次の値のいずれかを返すことがあります。
返される可能性のある値には、以下のものが含まれますが、これらに限定されません。
| 戻り値 | 説明 |
|---|---|
| メソッドは正常に完了しました。 | |
| このメソッドは実装されていません。 |
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IWSDMessageParameters "{1FAFE8A2-E6FC-4B80-B6CF-B7D45C416D7C}"
#usecom global IWSDMessageParameters IID_IWSDMessageParameters "{}"
#comfunc global IWSDMessageParameters_GetLocalAddress 3 sptr
#comfunc global IWSDMessageParameters_SetLocalAddress 4 sptr
#comfunc global IWSDMessageParameters_GetRemoteAddress 5 sptr
#comfunc global IWSDMessageParameters_SetRemoteAddress 6 sptr
#comfunc global IWSDMessageParameters_GetLowerParameters 7 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。