Función CoGetInterfaceAndReleaseStream (combaseapi.h)
Desmarshala un búfer que contiene un puntero de interfaz y libera la secuencia cuando un puntero de interfaz se ha serializado desde otro subproceso hasta el subproceso que realiza la llamada.
Sintaxis
HRESULT CoGetInterfaceAndReleaseStream(
[in] LPSTREAM pStm,
[in] REFIID iid,
[out] LPVOID *ppv
);
Parámetros
[in] pStm
Puntero a la interfaz IStream de la secuencia que se va a desmarcar.
[in] iid
Referencia al identificador de la interfaz solicitada desde el objeto no separado.
[out] ppv
Dirección de la variable de puntero que recibe el puntero de interfaz solicitado en riid. Tras la devolución correcta, *ppv contiene el puntero de interfaz solicitado a la interfaz no registrada.
Valor devuelto
Esta función puede devolver los valores devueltos estándar S_OK y E_INVALIDARG, así como cualquiera de los valores devueltos por CoUnmarshalInterface.
Comentarios
Nota de seguridad: llamar a este método con datos que no son de confianza es un riesgo de seguridad. Llame a este método solo con datos de confianza.
- Llama a CoUnmarshalInterface para desmarshalar un puntero de interfaz pasado anteriormente en una llamada a CoMarshalInterThreadInterfaceInStream.
- Libera el puntero de secuencia. Incluso si se produce un error en la desmarshaling, la secuencia todavía se libera porque no hay ninguna manera eficaz de recuperarse de un error de este tipo.
Requisitos
Cliente mínimo compatible | Windows 2000 Professional [aplicaciones de escritorio | Aplicaciones para UWP] |
Servidor mínimo compatible | Windows 2000 Server [aplicaciones de escritorio | Aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | combaseapi.h (incluya Objbase.h) |
Library | Ole32.lib |
Archivo DLL | Ole32.dll |