Freigeben über


ICallFrame::Unmarshal-Methode (callobj.h)

Hebt ein Datenpaket auf, das die zuvor gemarshallten [out]-Parameter eines Aufrufs in diesen bereits vorhandenen Aktivierungsdatensatz enthält.

Syntax

HRESULT Unmarshal(
  [in]  PVOID                    pBuffer,
  [in]  ULONG                    cbBuffer,
  [in]  RPCOLEDATAREP            dataRep,
  [in]  CALLFRAME_MARSHALCONTEXT *pcontext,
  [out] ULONG                    *pcbUnmarshalled
);

Parameter

[in] pBuffer

Ein Zeiger auf den Puffer, der die gemarshallten [out]-Werte enthält.

[in] cbBuffer

Die Größe des Puffers in Bytes.

[in] dataRep

Die NDR-Datendarstellung, mit der die Daten gemarshallt wurden. Weitere Informationen finden Sie unter IRpcChannelBuffer::GetBuffer.

[in] pcontext

Ein Zeiger auf die CALLFRAME_MARSHALCONTEXT-Struktur , die Kontextinformationen darüber enthält, wie die Entmarshallung durchgeführt wird.

[out] pcbUnmarshalled

Empfängt die Anzahl der Bytes, die erfolgreich entmarshaliert wurden. Dieser Parameter wird auch in Fehlersituationen zurückgegeben. Dieser Parameter ist optional.

Rückgabewert

Diese Methode kann die folgenden Werte zurückgeben.

Rückgabecode BESCHREIBUNG
S_OK
Die Methode wurde erfolgreich abgeschlossen.
E_UNEXPECTED
Ein unerwarteter Fehler ist aufgetreten.

Hinweise

Beim Aufheben der Entmarshallung werden die [in]-Versionen der Parameter [in, out] freigegeben, und Schnittstellenzeiger werden freigegeben und durch ihre [out]-Versionen ersetzt. Alle Parameter [in, out] und [out] werden immer auf vernünftige [in-, out]-Werte, [out]-Werte, [out]-Werte, die erfolgreich aus den zurückgegebenen Daten entfernt wurden, oder auf einen Wert festgelegt, der explizit auf NULL initialisiert wurde. Bei der Fehlerrückgabe möchte der Aufrufer in der Regel ICallFrame::Free aufrufen, um die Werte zu sauber, die nicht NULL sind.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile callobj.h

Weitere Informationen

ICallFrame