Função CoGetInterfaceAndReleaseStream (combaseapi.h)
Desmarca um buffer que contém um ponteiro de interface e libera o fluxo quando um ponteiro de interface é empacotado de outro thread para o thread de chamada.
Sintaxe
HRESULT CoGetInterfaceAndReleaseStream(
[in] LPSTREAM pStm,
[in] REFIID iid,
[out] LPVOID *ppv
);
Parâmetros
[in] pStm
Um ponteiro para a interface IStream no fluxo a ser nãomarsalizado.
[in] iid
Uma referência ao identificador da interface solicitada do objeto nãomarshaled.
[out] ppv
O endereço da variável de ponteiro que recebe o ponteiro de interface solicitado em riid. Após o retorno bem-sucedido, *ppv contém o ponteiro de interface solicitado para a interface nãomarshaled.
Valor retornado
Essa função pode retornar os valores retornados padrão S_OK e E_INVALIDARG, bem como qualquer um dos valores retornados por CoUnmarshalInterface.
Comentários
Observação de segurança: chamar esse método com dados não confiáveis é um risco à segurança. Chame esse método apenas quando você tiver dados confiáveis.
- Chama CoUnmarshalInterface para desmarcar um ponteiro de interface passado anteriormente em uma chamada para CoMarshalInterThreadInterfaceInStream.
- Libera o ponteiro de fluxo. Mesmo que a unmarshaling falhe, o fluxo ainda será liberado porque não há uma maneira eficaz de se recuperar de uma falha desse tipo.
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | combaseapi.h (inclua Objbase.h) |
Biblioteca | Ole32.lib |
DLL | Ole32.dll |