Método IClientSecurity::CopyProxy (objidl.h)
Realiza una copia privada del proxy para la interfaz especificada.
Sintaxis
HRESULT CopyProxy(
[in] IUnknown *pProxy,
[out] IUnknown **ppCopy
);
Parámetros
[in] pProxy
Puntero a la interfaz cuyo proxy se va a copiar. Este parámetro no puede ser NULL.
[out] ppCopy
Puntero al puntero de interfaz IUnknown que recibe la copia del proxy. Este parámetro no puede ser NULL.
Valor devuelto
Este método puede devolver los valores siguientes.
Código devuelto | Descripción |
---|---|
|
El método se completó correctamente. |
|
Uno o varios argumentos no son válidos. |
Comentarios
El cliente llama a CopyProxy para realizar una copia privada del proxy para la interfaz especificada. La copia de proxy tiene valores predeterminados para la información de autenticación. Su información de autenticación se puede cambiar a través de una llamada a IClientSecurity::SetBlanket sin afectar a ningún otro cliente del proxy original. La copia tiene una referencia y el autor de la llamada de CopyProxy debe asegurarse de que la copia de proxy se libera.
Las interfaces locales, como IUnknown e IClientSecurity, no se pueden copiar. No se puede duplicar un administrador de proxy mediante CopyProxy.
Las copias del mismo proxy tienen una relación especial con respecto a QueryInterface. Dado un proxy, a, de la interfaz IA de un objeto remoto, supongamos que se crea una copia de un elemento , denominado b. En este caso, llamar a QueryInterface desde el proxy b para IID_IA no recuperará la interfaz IA en b, pero la de un proxy original.
Tenga en cuenta que cualquier persona puede consultar un proxy y cambiar la seguridad en él mediante SetBlanket. Sin embargo, cuando haya realizado una copia de un proxy, nadie podrá obtener la copia a menos que la proporcione. Solo las personas que tengan la copia pueden establecer la seguridad en ella.
La función auxiliar CoCopyProxy encapsula una llamada QueryInterface para un puntero a IClientSecurity, una llamada a CopyProxy con el puntero IClientSecurity y la versión del puntero IClientSecurity .
Requisitos
Requisito | Value |
---|---|
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 | objidl.h (incluir ObjIdl.h) |