共用方式為


ICallFrame::ReleaseMarshalData 方法 (callobj.h)

釋放位於封送處理數據封包中的介面指標所持有的資源。 這個方法會尋找封包中的所有介面指標,並在每個介面上呼叫 CoReleaseMarshalData 函 式。

語法

HRESULT ReleaseMarshalData(
  [in] PVOID                    pBuffer,
  [in] ULONG                    cbBuffer,
  [in] ULONG                    ibFirstRelease,
  [in] RPCOLEDATAREP            dataRep,
  [in] CALLFRAME_MARSHALCONTEXT *pcontext
);

參數

[in] pBuffer

緩衝區的指標,其中包含封送處理的 [out] 值。

[in] cbBuffer

緩衝區的大小,以位元組為單位。

[in] ibFirstRelease

要釋放之緩衝區中的第一個字節。 值為零表示要釋放整個緩衝區中的介面指標。 封送處理介面指標假設已由一些其他機制釋出。

[in] dataRep

數據封送處理的數據表示。

[in] pcontext

CALLFRAME_MARSHALCONTEXT結構的指標,包含如何執行非封送處理的內容資訊。

傳回值

這個方法可以傳回下列值。

傳回碼 描述
S_OK
已成功完成命令。
E_UNEXPECTED
已發生未預期的錯誤。

備註

ReleaseMarshalData 方法必須剛好呼叫一次,才能清除封送處理緩衝區中保留的資源。 不過,當 MSHLFLAGS 列舉設定為MSHLFLAGS_NORMAL時,這會在取消封送處理期間自動完成,因此不需要明確執行。

這個方法可以在封送處理 [in] 和 [out] 參數上正確運作。

規格需求

需求
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 callobj.h

另請參閱

ICallFrame