Archivos INF para dispositivos WIA
Importante
Parte de la información contenida en este artículo se aplica a los sistemas operativos Windows obsoletos.
El instalador de clase predeterminado para dispositivos de imagen fija, sti_ci.dll, reconoce un conjunto especial de entradas de archivo INF. Dentro de un archivo INF, estas entradas deben colocarse dentro de la sección INF DDInstall de un dispositivo. Las entradas se describen en la tabla siguiente.
Entrada de archivo INF | Valor | Comentarios |
---|---|---|
Subclase | StillImage | Requerido |
DeviceType | 1 para escáneres 2 para cámaras 3 para streaming de vídeo |
Requerido |
DeviceSubType | Valor definido por el proveedor | Opcionales |
Connection | En el caso de los dispositivos que no son de Plug and Play conectados a puertos serie o paralelos, puede ser Serie o Paralelo para limitar la elección de puertos del usuario durante la instalación. | Opcionales Si no se especifica, el usuario puede seleccionar cualquier puerto serie o paralelo. |
Capabilities | Especifica un número que se convierte en marcas de bits que identifican las funcionalidades del dispositivo. Estas marcas se almacenan en el registro y están disponibles para los componentes sti por medio de la estructura STI_DEV_CAPS. Bit 0 – Establece/borra STI_GENCAP_NOTIFICATIONS en STI_DEV_CAPS. Bit 1 – Establece/borra STI_GENCAP_POLLING_NEEDED en STI_DEV_CAPS. Bit 2 : establece o borra STI_GENCAP_GENERATE_ARRIVALEVENT en STI_DEV_CAPS. Bit 3 – Establece/borra STI_GENCAP_AUTO_PORTSELECT en STI_DEV_CAPS. Bit 4 – Establece/borra STI_GENCAP_WIA en STI_DEV_CAPS. Bit 5 – Establece/borra STI_GENCAP_SUBSET en STI_DEV_CAPS. |
Opcionales El bit 5 no se usa actualmente. Establezca esta entrada en el archivo INF en 0x33 para admitir eventos de botón de inserción con el escáner. |
PropertyPages | Solo para Windows 98 y Windows 2000 Identifica el nombre y el punto de entrada de un archivo DLL que crea páginas de hoja de propiedades personalizadas para dispositivos de imagen fija. Para obtener más información sobre la entrada PropertyPages , vea Archivos INF para dispositivos de imagen fija. |
Opcionales Esta entrada solo la usan los controladores STI y está obsoleta para los controladores WIA. Para obtener información sobre las páginas de propiedades relevantes para los desarrolladores de controladores wia, vea la nota en PropertyPages que sigue a esta tabla. |
DeviceData | Identifica una sección de datos proporcionada por el proveedor que contiene información que se almacenará en el Registro, en la clave DeviceData . En el caso de los dispositivos compatibles con TWAIN, la sección de datos debe contener una entrada TwainDS (consulte Entradas del Registro para controladores WIA). | Opcionales |
Eventos | Identifica una sección de datos proporcionada por el proveedor que muestra eventos de dispositivo de imagen todavía. Cada entrada de esta sección debe tener el formato siguiente: EventName="String",{GUID},App EventName es el nombre interno del evento, String es la cadena para mostrar del evento, guid es el GUID del evento y App especifica la aplicación de creación de imágenes que se iniciará cuando se produzca el evento. Para iniciar la aplicación registrada actualmente, use un asterisco () paraApp*. |
Requerido |
PortSelect | Si la instalación del dispositivo no requiere una página de selección de puerto, un valor de "no" hace que esa página se omita. Este valor también hace que el valor de entrada CreateFileName (vea la nota en CreateFileName y PortSelect después de esta tabla) se establezca automáticamente en AUTO. Un valor de Message1 hace que se muestre un mensaje proporcionado por el sistema y establece el valor de entrada CreateFileName en AUTO. Se aplica tanto a escáneres como a cámaras que requieren instalación manual. |
Opcionales Tenga en cuenta que para Plug and Play dispositivos, PortSelect se omite, pero el dispositivo todavía debe tener el valor de entrada CreateFileName establecido en AUTO para que WIA cargue el dispositivo. Use la directiva AddReg inf para agregar esta entrada a la sección INF DDInstall del archivo INF del dispositivo. |
Nota
Para comunicarse con un dispositivo, un cliente en modo de usuario (un minidriver) debe pedir al servicio WIA el nombre de archivo del dispositivo y una cadena que especifique el nombre del objeto que se va a crear o abrir. (El nombre de archivo no tiene que ser el nombre de un archivo de disco). Respondiendo a esta consulta, el servicio WIA obtiene el nombre de archivo del dispositivo de la entrada del Registro CreateFileName . (Los controladores usbscan.sys y scsiscan.sys modo kernel crean esta entrada, al igual que el instalador de clase). El minidriver recibe este nombre de archivo llamando al método IStiDeviceControl::GetMyDevicePortName . A continuación, el minidriver puede usar este nombre de archivo cuando llama a la función CreateFile para abrir un identificador en el dispositivo. Si el dispositivo se instala manualmente, el instalador de clase crea la entrada CreateFileName , estableciendo su valor en uno que dependa de la selección del usuario en la página de selección de puerto: COMX, LPTX o AUTO. Algunos dispositivos (escáneres de red, por ejemplo) que se instalan manualmente no requieren un puerto. En tales casos, el cuadro de diálogo de selección de puerto resultante puede confundir a los usuarios. Para evitar que aparezca este cuadro de diálogo, agregue la siguiente entrada en la sección INF DDInstall del archivo INF del dispositivo.
PortSelect=NO
Nota
Un efecto secundario de este valor de entrada es que la entrada CreateFileName se establece en AUTO. Tenga en cuenta que si el minidriver recibe AUTO para el nombre de archivo, debe ser capaz de determinar por sí mismo con qué dispositivo debe comunicarse.
Nota
Para PropertyPages, un controlador WIA debe usar un mecanismo de extensibilidad diferente para agregar páginas de propiedades. También debe agregar su propio GUID a la entrada id. de clase de interfaz de usuario en sus archivos INF y debe proporcionar un registro de extensibilidad de interfaz de usuario específico (consulte Entradas del Registro de extensión de interfaz de usuario) para los componentes de la interfaz de usuario que se reemplazan, como cuadros de diálogo comunes o agregados, como menús contextuales y páginas de propiedades. Un controlador WIA también debe proporcionar el registro de extensibilidad de la interfaz de usuario para el propio componente.
Entradas de archivo INF adicionales
Las entradas de la tabla siguiente deben colocarse dentro de la sección a la que apunta la directiva INF AddReg del dispositivo:
Entrada de archivo INF | Valor | Comentarios |
---|---|---|
HardwareConfig | Indica el tipo de conexión que está usando el dispositivo. 1,1 – dispositivo WDM genérico 1,2 - Dispositivo SCSI 1,4 - Dispositivo USB 1,8 – dispositivo serie 1,16 – dispositivo paralelo |
Opcionales |
USDClass | Indica el GUID del minidriver. | Opcional. El GUID de las entradas USDClass y CLSID debe coincidir con el GUID que se usa en la función DllGetClassObject del minidriver. Si va a escribir un microdriver, el valor debe ser BB6CF8E2-1511-40bd-91BA-80D43C53064E. De lo contrario, debe generar un nuevo GUID mediante, por ejemplo, genguid.exe. |
CLSID | Indica el GUID del minidriver. | Opcional. Vea los comentarios inmediatamente anteriores para la entrada USDClass . |
El instalador de clase predeterminado para dispositivos de imagen fija admite la directiva CopyFiles inf estándar.
El archivo INF predeterminado para dispositivos de imagen fija, sti.inf, define dos secciones de instalación para cada tipo de dispositivo, como se indica a continuación:
Una sección INF DDInstall, a la que se debe hacer referencia en la sección DDInstall del archivo INF proporcionado por el proveedor, como se muestra en la tabla siguiente.
Tipo de dispositivo Incluir Necesidades IEEE 1394/SBP2 Include=sti.inf Needs=STI. SBP2Section USB Include=sti.inf Needs=STI. USBSection SCSI Include=sti.inf Needs=STI. SCSISection Serie Include=sti.inf Needs=STI. SerialSection Una sección INF DDInstall Services, a la que se debe hacer referencia en la sección INF DDInstall.Services del archivo INF proporcionado por el proveedor, como se muestra en la tabla siguiente.
Tipo de dispositivo Incluir Necesidades 1394/SBP2 Include=sti.inf Needs=STI. SBP2Section.Services USB Include=sti.inf Needs=STI. USBSection.Services SCSI Include=sti.inf Needs=STI. SCSISection.Services Serie Include=sti.inf Needs=STI. SerialSection.Services
Para obtener instrucciones adicionales sobre cómo crear archivos INF para dispositivos de imagen fija, puede ver cualquier archivo INF proporcionado con Windows que contenga la entrada SubClass=StillImage.
Para designar el dispositivo como un dispositivo WIA, el archivo INF del minidriver debe contener los siguientes valores colocados en la sección DeviceData del archivo INF proporcionado por el proveedor.
Entrada de archivo INF | Valor | Comentarios |
---|---|---|
Servidor | Local | Designa el dispositivo como un dispositivo local. Esto es opcional y si un proveedor no especifica un valor de entrada, se supone que el dispositivo es local. Es decir, la propiedad WIA_DIP_SERVER_NAME se establece en Local. |
MicroDriver | Nombre de archivo de.dll proporcionado por el proveedor | Esta entrada debe establecerse en el nombre del archivo DLL proporcionado por el proveedor que implementa el microdriver WIA. |
DLL de interfaz de usuario | Nombre de archivo de.dll proporcionado por el proveedor | Obsoleto y nunca usado. Anteriormente, esta entrada indica el nombre del archivo DLL de interfaz de usuario proporcionado por el proveedor. |
Id. de clase de interfaz de usuario | Identificador de clase de dispositivo proporcionado por el proveedor | Indica la clase de dispositivo que la interfaz de usuario proporcionada por el proveedor es capaz de admitir. Esto es opcional y si un proveedor no especifica un valor de entrada, WIA establece la propiedad WIA_DIP_UI_CLSID en GUID_NULL y se usa la interfaz de usuario de WIA predeterminada. |
ICMProfiles | Valor de perfil de color proporcionado por el proveedor | Especifica un valor que se va a colocar en la propiedad WIA_IPA_ICM_PROFILE_NAME. Si no se especifica ningún valor, se usa el perfil sRGB estándar sRGB Color Space Profile.icm . |
La entrada MicroDriver solo es necesaria si el proveedor proporciona un microdriver WIA.
Las entradas de la interfaz de usuario (UI) solo son necesarias si el proveedor proporciona una interfaz de usuario personalizada para el dispositivo de creación de imágenes.
Comentarios
Al desarrollar un archivo INF para escáneres, puede usar descriptores del sistema operativo de Microsoft para habilitar la funcionalidad de identificador de compatibilidad. Al hacerlo, se permite que un controlador de escáner sea compatible con varios modelos de escáner.