Función ChangeWindowMessageFilter (winuser.h)
[No se recomienda usar la función ChangeWindowMessageFilter , ya que tiene un ámbito de todo el proceso. En su lugar, use la función ChangeWindowMessageFilterEx para controlar el acceso a ventanas específicas según sea necesario. Es posible que ChangeWindowMessageFilter no se admita en versiones futuras de Windows.
Agrega o quita un mensaje del filtro de mensajes de aislamiento de privilegios de la interfaz de usuario (UIPI).
Sintaxis
BOOL ChangeWindowMessageFilter(
[in] UINT message,
[in] DWORD dwFlag
);
Parámetros
[in] message
Tipo: UINT
Mensaje que se va a agregar o quitar del filtro.
[in] dwFlag
Tipo: DWORD
Acción que se va a realizar. Uno de los siguientes valores.
Valor devuelto
Tipo: BOOL
TRUE si se ejecuta correctamente; de lo contrario, FALSE. Para obtener información de error extendida, llame a GetLastError.
Comentarios
UIPI es una característica de seguridad que impide que se reciban mensajes de un remitente de nivel de integridad inferior. Todos estos mensajes con un valor por encima de WM_USER están bloqueados de forma predeterminada. El filtro, algo contrario a la intuición, es una lista de mensajes que se permiten a través. Por lo tanto, agregar un mensaje al filtro permite que ese mensaje se reciba de un remitente de integridad inferior, mientras que la eliminación de un mensaje impide que se reciba ese mensaje.
Se requieren determinados mensajes con un valor menor que WM_USER para pasar por el filtro independientemente de la configuración del filtro. Puede llamar a esta función para quitar uno de esos mensajes del filtro y devolverá TRUE. Sin embargo, el proceso de llamada seguirá recibiendo el mensaje.
No se permite cambiar el filtro a los procesos en o por debajo de SECURITY_MANDATORY_LOW_RID . Si esos procesos llaman a esta función, se producirá un error.
Para obtener más información sobre los niveles de integridad, vea Descripción y funcionamiento en modo protegido de Internet Explorer.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | winuser.h (incluir Windows.h) |
Library | User32.lib |
Archivo DLL | User32.dll |