Directiva AddFilter de INF
Cada directiva AddFilter describe la instalación de un servicio de controlador como un filtro declarativo en una posición o nivel de filtro. Esta directiva se admite en Windows 10, versión 1903 y posteriores.
En lugar de usar un valor del Registro para especificar una lista específica de filtros superiores o inferiores que se van a agregar a la pila de dispositivos, los filtros declarativos registran filtros mediante metadatos. Estos metadatos se usan para generar la lista final de filtros en el momento en que se inicia el dispositivo. Los filtros declarativos se pueden usar junto con el modelo heredado de uso de los valores del Registro UpperFilters/LowerFilters. Para obtener más información sobre el modelo de filtro declarativo, consulte Orden de controladores de filtro de dispositivos.
Una directiva AddFilter se usa dentro de una sección INF DDInstall.Filters.
[DDInstall.Filters]
AddFilter=FilterName,[flags],filter-install-section
Entries
FilterName
Especifica el nombre del filtro que se va a instalar. Este nombre debe coincidir exactamente con el nombre de un servicio de controlador instalado en el sistema.
flags
Las marcas no se usan actualmente y deben ser 0 si se especifican.
filter-install-section
Hace referencia a una sección INF-writer-defined que contiene metadatos sobre cómo se debe agregar el filtro a la pila de dispositivos.
Comentarios
Cada nombre de sección INF-writer-created debe seguir las reglas generales para definir nombres de sección. Para obtener más información sobre estas reglas, consulte Reglas generales de sintaxis para archivos INF.
Una directiva AddFilter debe hacer referencia a una sección denominada filter-install-section en otra parte del archivo INF. Cada sección de este tipo tiene el siguiente formato:
[filter-install-section]
[FilterLevel = LevelName]
[FilterPosition = Upper / Lower]
Nota:
En cada sección filter-install-section, la posición del filtro o el nivel de filtro deben definirse, pero no ambos. Consulte Ordenación del controlador de filtro de dispositivos para obtener información completa sobre cómo definir metadatos de filtro.
[filter-install-section]: FilterLevel
FilterLevel = {LevelName}
FilterLevel especifica el nombre de un nivel de filtro definido por el paquete de controladores base del dispositivo. El filtro se registra con ese nombre de nivel y la lista final de filtros se determina cuando el dispositivo comienza ensamblando la lista de los filtros registrados de acuerdo con los metadatos de nivel de filtro proporcionados por el paquete del controlador base. En caso de que el nivel de filtro especificado no esté definido en los metadatos del paquete del controlador base, el filtro no se agrega a la pila.
Para obtener detalles completos sobre el proceso de definición de los metadatos de nivel de filtro y cómo se ensambla la lista de filtros finales, consulte Ordenación del controlador de filtro de dispositivos.
[filter-install-section]: FilterPosition
FilterPosition = {Upper / Lower}
FilterPosition especifica la posición de un filtro en la pila, ya sea como filtro superior o inferior. Si el paquete de controladores base del dispositivo especifica metadatos de nivel de filtro, el uso de FilterPosition insertará el filtro en el nivel de filtro predeterminado para los filtros de dispositivo superior o inferior, tal como se especifica. Si el paquete del controlador base no proporciona estos metadatos, el filtro se insertará en los filtros superior o inferior especificados en orden arbitrario.