Función SetWindowDisplayAffinity (winuser.h)
Especifica dónde se puede mostrar el contenido de la ventana.
Sintaxis
BOOL SetWindowDisplayAffinity(
[in] HWND hWnd,
[in] DWORD dwAffinity
);
Parámetros
[in] hWnd
Tipo: HWND
Identificador de la ventana de nivel superior. La ventana debe pertenecer al proceso actual.
[in] dwAffinity
Tipo: DWORD
La configuración de afinidad para mostrar que especifica dónde se puede mostrar el contenido de la ventana.
Este parámetro puede ser uno de los valores siguientes.
Valor devuelto
Tipo: BOOL
Si la función se ejecuta correctamente, devuelve TRUE; de lo contrario, devuelve FALSE cuando, por ejemplo, la llamada de función se realiza en una ventana que no es de nivel superior. Para obtener información de error extendida, llame a GetLastError.
Comentarios
Esta función y GetWindowDisplayAffinity están diseñadas para admitir la característica de protección de contenido de ventana que es nueva en Windows 7. Esta característica permite a las aplicaciones proteger su propio contenido de ventana en pantalla de la captura o copiación a través de un conjunto específico de características y API del sistema operativo público. Sin embargo, solo funciona cuando el Administrador de ventanas de escritorio (DWM) está redactando el escritorio.
Es importante tener en cuenta que, a diferencia de una característica de seguridad o una implementación de Digital Rights Management (DRM), no hay ninguna garantía de que el uso de SetWindowDisplayAffinity y GetWindowDisplayAffinity, y otras funciones necesarias, como DwmIsCompositionEnabled, protegerán estrictamente el contenido en ventana, por ejemplo, donde alguien toma una fotografía de la pantalla.
A partir de Windows 10 versión 2004, WDA_EXCLUDEFROMCAPTURE es un valor admitido. Si se establece la afinidad de visualización en WDA_EXCLUDEFROMCAPTURE en la versión anterior de Windows, se comportará como si se aplicara WDA_MONITOR.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 7 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 R2 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | winuser.h (incluya Windows.h) |
Library | User32.lib |
Archivo DLL | User32.dll |
Conjunto de API | ext-ms-win-ntuser-window-l1-1-1 (introducido en Windows 8.1) |