Método IClientSecurity::CopyProxy (objidl.h)
Faz uma cópia privada do proxy para a interface especificada.
Sintaxe
HRESULT CopyProxy(
[in] IUnknown *pProxy,
[out] IUnknown **ppCopy
);
Parâmetros
[in] pProxy
Um ponteiro para a interface cujo proxy deve ser copiado. Esse parâmetro não pode ser NULL.
[out] ppCopy
Um ponteiro para o ponteiro da interface IUnknown que recebe a cópia do proxy. Esse parâmetro não pode ser NULL.
Retornar valor
Esse método pode retornar os valores a seguir.
Código de retorno | Descrição |
---|---|
|
O método foi concluído com sucesso. |
|
Um ou mais argumentos não são válidos. |
Comentários
CopyProxy é chamado pelo cliente para fazer uma cópia privada do proxy para a interface especificada. A cópia de proxy tem valores padrão para as informações de autenticação. Suas informações de autenticação podem ser alteradas por meio de uma chamada para IClientSecurity::SetBlanket sem afetar nenhum outro cliente do proxy original. A cópia tem uma referência e o chamador de CopyProxy deve garantir que a cópia do proxy seja liberada.
Interfaces locais, como IUnknown e IClientSecurity, não podem ser copiadas. Você não pode duplicar um gerenciador de proxy usando CopyProxy.
Cópias do mesmo proxy têm uma relação especial em relação a QueryInterface. Dado um proxy, a, da interface IA de um objeto remoto, suponha que uma cópia de um seja criada, chamada b. Nesse caso, chamar QueryInterface do proxy b para IID_IA não recuperará a interface ia em b, mas a do proxy original.
Observe que qualquer pessoa pode consultar um proxy e alterar a segurança nele usando SetBlanket. No entanto, quando você tiver feito uma cópia de um proxy, ninguém poderá obter a cópia, a menos que você a dê a elas. Somente as pessoas que têm a cópia podem definir a segurança nela.
A função auxiliar CoCopyProxy encapsula uma chamada QueryInterface para um ponteiro para IClientSecurity, uma chamada para CopyProxy com o ponteiro IClientSecurity e a versão do ponteiro IClientSecurity .
Requisitos
Requisito | Valor |
---|---|
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 | objidl.h (inclua ObjIdl.h) |