Método ICallFrame::ReleaseMarshalData (callobj.h)
Libera los recursos que mantienen los punteros de interfaz que residen en un paquete de datos serializado. Este método busca todos los punteros de interfaz en el paquete y llama a la función CoReleaseMarshalData en cada uno de ellos.
Sintaxis
HRESULT ReleaseMarshalData(
[in] PVOID pBuffer,
[in] ULONG cbBuffer,
[in] ULONG ibFirstRelease,
[in] RPCOLEDATAREP dataRep,
[in] CALLFRAME_MARSHALCONTEXT *pcontext
);
Parámetros
[in] pBuffer
Puntero al búfer que contiene los valores de [out] serializado.
[in] cbBuffer
Tamaño del búfer, en bytes.
[in] ibFirstRelease
Primer byte del búfer, que se va a liberar. Un valor de cero implica que se liberarán los punteros de interfaz en todo el búfer. Se supone que otros mecanismos han liberado los punteros de interfaz serializado.
[in] dataRep
Representación de datos con la que se serializaron los datos.
[in] pcontext
Puntero a la estructura CALLFRAME_MARSHALCONTEXT que contiene información de contexto sobre cómo se realiza la anulación de serialización.
Valor devuelto
Este método puede devolver los valores siguientes.
Código devuelto | Descripción |
---|---|
|
El método se completó correctamente. |
|
Se produjo un error inesperado. |
Comentarios
Se debe llamar al método ReleaseMarshalData exactamente una vez para limpiar los recursos contenidos en un búfer serializado. Sin embargo, cuando la enumeración MSHLFLAGS se establece en MSHLFLAGS_NORMAL, esto se realiza automáticamente durante la anulación de las referencias y, por tanto, no es necesario llevar a cabo explícitamente.
Este método puede funcionar correctamente en los parámetros [in] y [out] serializado.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | callobj.h |