Sección INF DDInstall.Interfaces

Cada uno de los modelos , DDInstall_. La sección Interfaces puede tener una o varias directivas AddInterface , en función del número de interfaces de dispositivo que admita un dispositivo o controlador determinado.

[install-section-name.Interfaces] |
[install-section-name.nt.Interfaces] | 
[install-section-name.ntx86.Interfaces] |
[install-section-name.ntia64.Interfaces] | (Windows XP and later versions of Windows)
[install-section-name.ntamd64.Interfaces] | (Windows XP and later versions of Windows)
[install-section-name.ntarm.Interfaces] | (Windows 8 and later versions of Windows)
[install-section-name.ntarm64.Interfaces] (Windows 10 version 1709 and later versions of Windows)
 
AddInterface={InterfaceClassGUID} [, [reference string] [,[add-interface-section] [,flags]]] ...
[Include=filename.inf[,filename2.inf]...]
[Needs=inf-section-name[,inf-section-name]...] 

Para admitir interfaces de dispositivo existentes, como cualquiera de las interfaces de streaming de kernel predefinidas del sistema, especifique los valores InterfaceClassGUID adecuados en esta sección.

Para instalar un componente, como un controlador de clase, que exporta una nueva clase de interfaces de dispositivo, un INF también debe tener una sección INF InterfaceInstall32.

Para obtener más información sobre las interfaces de dispositivo, consulte Clases de interfaz de dispositivo.

Entradas

AddInterface={InterfaceClassGUID} [,[reference string] [,[add-interface-section] [,,flags_]]...
Esta directiva instala la compatibilidad con una clase de interfaz de dispositivo, designada por el valor InterfaceClassGUID especificado que el controlador exporta a componentes de nivel superior. Normalmente, también hace referencia a una sección add-interface-definida por INF-writer en otra parte del archivo INF. Para obtener información detallada sobre cómo especificar esta directiva, vea Inf AddInterface Directive.

Include=,filename. inf[,filename2.inf]...
Esta entrada opcional especifica uno o varios archivos INF adicionales proporcionados por el sistema que contienen secciones necesarias para registrar las clases de interfaz compatibles con este dispositivo o controlador. Si se especifica esta entrada, normalmente es una entrada Needs .

Needs=,inf-section-name[,inf-section-name]...
Esta entrada opcional especifica las secciones concretas que se deben procesar durante la instalación de este dispositivo. Normalmente, este tipo de sección con nombre es un ,DDInstall_. Sección Interfaces dentro de un archivo INF proporcionado por el sistema que aparece en una entrada Include . Sin embargo, puede ser cualquier sección a la que se haga referencia dentro de este tipo de ,DDInstall_. Sección interfaces del INF incluido.

Comentarios

Se debe hacer referencia al nombre de la sección DDInstall mediante una entrada específica de dispositivos o modelos en la sección Modelos por fabricante del archivo INF. Para obtener información sobre cómo usar las extensiones .nt, .ntx86, .ntia64, .ntamd64, .ntarm y .ntarm64 definidas por el sistema en archivos INF multiplataforma, vea Creating INF Files for Multiple Platforms and Operating Systems.

Si aún no está instalado un {,InterfaceClassGUID_} especificado, el código de instalación del sistema operativo instala esa clase de interfaz de dispositivo en el sistema. Si un archivo INF instala una o varias clases de interfaz de dispositivo nuevas, también puede tener una sección [InterfaceInstall32] que identifique el GUID de la nueva clase.

Para obtener más información sobre cómo crear un GUID, consulte Uso de GUID en controladores. Para los GUID de clase de interfaz definidas por el sistema, consulte el encabezado proporcionado por el sistema adecuado, como Ks.h para el GUIDS de la clase de interfaz de streaming de kernel.

Cuando se carga un controlador, debe llamar a IoRegisterDeviceInterface con la misma {,InterfaceClassGUID_} y cadena de referencia usada en una directiva AddInterface para obtener el valor de SymbolicLinkName completo para la interfaz del dispositivo. Debe hacerlo para cada interfaz de dispositivo del ,DDInstall_ inf. Sección interfaces que admite el controlador en el dispositivo subyacente. Para cada SymbolicLinkName, el controlador debe llamar a IoSetDeviceInterfaceState para habilitar la interfaz del dispositivo. Normalmente, una función PnP o un controlador de filtro realiza estas llamadas desde su rutina AddDevice .

Ejemplos

En este ejemplo se muestra DDInstall. Nt. Sección interfaces del archivo INF para el dispositivo o controlador de audio WDM proporcionado por el sistema.

;
; following AddInterface= are all single lines (without 
; backslash line continuators) in the system-supplied INF file
;
[WDMPNPB003_Device.NT.Interfaces]
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Wave%,\
  WDM_SB16.Interface.Wave
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_Topology%,\
  WDM_SB16.Interface.Topology
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_UART%,\
  WDM_SB16.Interface.UART
AddInterface=%KSCATEGORY_AUDIO%,%KSNAME_FMSynth%,\
  WDM_SB16.Interface.FMSynth
; ...

[Strings] ; only immediately preceding %strkey% tokens shown here
%KSCATEGORY_AUDIO% = "{6994ad04-93ef-11d0-a3cc-00a0c9223196}"
KSNAME_Wave = "Wave"
KSNAME_UART = "UART"
KSNAME_FMSynth = "FMSynth" 
KSNAME_Topology = "Topology"
; ...

Consulte también

AddInterface

DDInstall

InterfaceInstall32

IoRegisterDeviceInterface

IoSetDeviceInterfaceState

Modelos