Partager via


Fichiers INF pour les appareils WIA

Important

Certaines informations contenues dans cet article s’appliquent aux systèmes d’exploitation Windows obsolètes.

Le programme d’installation de classe par défaut pour les appareils à image fixe, sti_ci.dll, reconnaît un ensemble spécial d’entrées de fichier INF. Dans un fichier INF, ces entrées doivent être placées dans la section INF DDInstall d’un appareil. Les entrées sont décrites dans le tableau suivant.

Entrée de fichier INF Valeur Commentaires
Sous-classe StillImage Obligatoire
DeviceType 1 pour les scanneurs

2 pour les caméras

3 pour le streaming vidéo
Obligatoire
DeviceSubType Valeur définie par le fournisseur Facultatif
Connection Pour les appareils non Plug-and-Play connectés à des ports série ou parallèles, il peut s’agir d’appareils série ou parallèle pour limiter le choix des ports de l’utilisateur lors de l’installation. Facultatif

S’il n’est pas spécifié, l’utilisateur peut sélectionner n’importe quel port série ou parallèle.
Capabilities Spécifie un nombre converti en indicateurs de bits identifiant les fonctionnalités de l’appareil. Ces indicateurs sont stockés dans le Registre et sont disponibles pour les composants STI au moyen de la structure STI_DEV_CAPS.

Bit 0 − Définit/efface les STI_GENCAP_NOTIFICATIONS dans STI_DEV_CAPS.

Bit 1 - Définit/efface STI_GENCAP_POLLING_NEEDED dans STI_DEV_CAPS.

Bit 2 − Définit/efface les STI_GENCAP_GENERATE_ARRIVALEVENT dans STI_DEV_CAPS.

Bit 3 − Définit/efface les STI_GENCAP_AUTO_PORTSELECT dans STI_DEV_CAPS.

Bit 4 − Définit/efface STI_GENCAP_WIA dans STI_DEV_CAPS.

Bit 5 − Définit/efface les STI_GENCAP_SUBSET dans STI_DEV_CAPS.
Facultatif

Le bit 5 n’est actuellement pas utilisé.

Définissez cette entrée dans votre fichier INF sur 0x33 pour prendre en charge les événements de bouton-pousseur avec votre scanneur.
PropertyPages Pour Windows 98 et Windows 2000 uniquement

Identifie le nom et le point d’entrée d’une DLL qui crée des pages de feuille de propriétés personnalisées pour les appareils à image fixe.

Pour plus d’informations sur l’entrée PropertyPages , consultez Fichiers INF pour les appareils à image fixe.
Facultatif

Cette entrée est destinée uniquement aux pilotes STI et est obsolète pour les pilotes WIA.

Pour plus d’informations sur les pages de propriétés pertinentes pour les développeurs de pilotes WIA, consultez la note sur propertyPages qui suit ce tableau.
DeviceData Identifie une section de données fournie par le fournisseur contenant des informations à stocker dans le Registre, sous la clé DeviceData . Pour les appareils pris en charge par TWAIN, la section données doit contenir une entrée TwainDS (voir Entrées de Registre pour les pilotes WIA) Facultatif
Événements Identifie une section de données fournie par le fournisseur répertoriant les événements d’appareil à image fixe. Chaque entrée de cette section doit avoir le format suivant :

EventName="String »,{GUID},App

EventName est le nom interne de l’événement, String est la chaîne d’affichage de l’événement, GUID est le GUID de l’événement et App spécifie l’application de création d’images à lancer lorsque l’événement se produit. Pour lancer l’application actuellement inscrite, utilisez un astérisque () pourApp*.
Obligatoire
PortSelect Si l’installation de l’appareil ne nécessite pas de page de sélection de port, la valeur « non » entraîne l’ignorer. Cette valeur entraîne également la définition automatique de la valeur d’entrée CreateFileName (voir la note sur CreateFileName et PortSelect qui suit ce tableau) sur AUTO.

La valeur Message1 entraîne l’affichage d’un message fourni par le système et définit la valeur d’entrée CreateFileName sur AUTO.

S’applique aux scanneurs et aux caméras qui nécessitent une installation manuelle.
Facultatif

Notez que pour les appareils Plug-and-Play, PortSelect est ignoré, mais que la valeur d’entrée CreateFileName doit toujours être définie sur AUTO pour que WIA charge l’appareil. Utilisez la directive INF AddReg pour ajouter cette entrée à la section INF DDInstall du fichier INF de l’appareil.

Notes

Pour communiquer avec un appareil, un client en mode utilisateur (un minidriver) doit demander au service WIA le nom de fichier de l’appareil et une chaîne qui spécifie le nom de l’objet à créer ou à ouvrir. (Le nom de fichier ne doit pas être le nom d’un fichier de disque.) En réponse à une telle requête, le service WIA obtient le nom de fichier de l’appareil à partir de l’entrée de registre CreateFileName . (Les pilotesusbscan.sys et scsiscan.sys en mode noyau créent cette entrée, tout comme le programme d’installation de classe.) Le minidriver reçoit ce nom de fichier en appelant la méthode IStiDeviceControl ::GetMyDevicePortName . Le minidriver peut ensuite utiliser ce nom de fichier lorsqu’il appelle la fonction CreateFile pour ouvrir un handle sur l’appareil. Si l’appareil est installé manuellement, le programme d’installation de classe crée l’entrée CreateFileName , en définissant sa valeur sur une valeur qui dépend de la sélection de l’utilisateur sur la page de sélection de port : COMX, LPTX ou AUTO. Certains appareils (analyseurs réseau, par exemple) qui sont installés manuellement ne nécessitent pas de port. Dans ce cas, la boîte de dialogue de sélection de port qui en résulte peut perturber les utilisateurs. Vous pouvez empêcher cette boîte de dialogue d’apparaître en ajoutant l’entrée suivante dans la section INF DDInstall du fichier INF de votre appareil.

PortSelect=NO

Notes

Un effet secondaire de cette valeur d’entrée est que l’entrée CreateFileName est définie sur AUTO. Notez que si le minidriver reçoit AUTO pour le nom de fichier, il doit être en mesure de déterminer seul l’appareil avec lequel il doit communiquer.

Notes

Pour PropertyPages, un pilote WIA doit utiliser un mécanisme d’extensibilité différent pour ajouter des pages de propriétés. Il doit également ajouter son propre GUID à l’entrée ID de classe d’interface utilisateur dans ses fichiers INF, et doit fournir une inscription d’extensibilité de l’interface utilisateur spécifique (voir Entrées de Registre de l’extension d’interface utilisateur) pour les composants d’interface utilisateur en cours de remplacement, tels que les boîtes de dialogue courantes, ou ajoutés, tels que les menus contextuels et les pages de propriétés. Un pilote WIA doit également fournir l’inscription d’extensibilité de l’interface utilisateur pour le composant lui-même.

Entrées de fichier INF supplémentaires

Les entrées du tableau suivant doivent être placées dans la section pointée par la directive ADDReg INF de l’appareil :

Entrée de fichier INF Valeur Commentaires
HardwareConfig Indique le type de connexion utilisé par l’appareil.

1,1 − appareil WDM générique

1,2 − appareil SCSI

1,4 − Périphérique USB

1,8 − appareil série

1,16 − appareil parallèle
Facultatif
USDClass Indique le GUID du minidriver. facultatif.

Le GUID dans les entrées USDClass et CLSID doit correspondre au GUID utilisé dans la fonction DllGetClassObject du minidriver. Si vous écrivez un microdriver, la valeur doit être BB6CF8E2-1511-40bd-91BA-80D43C53064E. Sinon, vous devez générer un nouveau GUID, en utilisant, par exemple, genguid.exe.
CLSID Indique le GUID du minidriver. facultatif.

Consultez les commentaires précédents pour l’entrée USDClass .

Le programme d’installation de classe par défaut pour les appareils d’image fixe prend en charge la directive CopyFiles INF standard.

Le fichier INF par défaut pour les appareils à image fixe, sti.inf, définit deux sections d’installation pour chaque type d’appareil, comme suit :

  • Section INF DDInstall, qui doit être référencée dans la section DDInstall du fichier INF fourni par le fournisseur, comme indiqué dans le tableau suivant.

    Type d’appareil Inclure Nécessite
    IEEE 1394/SBP2 Include=sti.inf Needs=STI. SBP2Section
    USB Include=sti.inf Needs=STI. USBSection
    SCSI Include=sti.inf Needs=STI. SCSISection
    Série Include=sti.inf Needs=STI. SerialSection
  • Section INF DDInstall Services, qui doit être référencée dans la section INF DDInstall.Services du fichier INF fourni par le fournisseur, comme indiqué dans le tableau suivant.

    Type d’appareil Inclure Nécessite
    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
    Série Include=sti.inf Needs=STI. SerialSection.Services

Pour obtenir des conseils supplémentaires sur la création de fichiers INF pour les appareils à image fixe, vous pouvez consulter n’importe quel fichier INF fourni avec Windows qui contient l’entrée SubClass=StillImage.

Pour désigner l’appareil en tant qu’appareil WIA, le fichier INF du minidriver doit contenir les valeurs suivantes placées dans la section DeviceData du fichier INF fourni par le fournisseur.

Entrée de fichier INF Valeur Commentaires
Serveur Local Désigne l’appareil en tant qu’appareil local. Cela est facultatif et si un fournisseur ne spécifie pas de valeur d’entrée, l’appareil est supposé être local. Autrement dit, la propriété WIA_DIP_SERVER_NAME est définie sur Local.
MicroDriver Nom de fichier .dll fourni par le fournisseur Cette entrée doit être définie sur le nom de la DLL fournie par le fournisseur qui implémente le microdriver WIA.
DLL d’interface utilisateur Nom de fichier .dll fourni par le fournisseur Obsolète et jamais utilisé. Auparavant, cette entrée indiquait le nom du fichier DLL d’interface utilisateur fourni par le fournisseur.
ID de classe d’interface utilisateur Identificateur de classe d’appareil fourni par le fournisseur Indique la classe d’appareil que l’interface utilisateur fournie par le fournisseur est capable de prendre en charge. Cette option est facultative et si un fournisseur ne spécifie pas de valeur d’entrée, WIA définit la propriété WIA_DIP_UI_CLSID sur GUID_NULL et l’interface utilisateur WIA par défaut est utilisée.
ICMProfiles Valeur de profil de couleur fournie par le fournisseur Spécifie une valeur à placer dans la propriété WIA_IPA_ICM_PROFILE_NAME. Si aucune valeur n’est spécifiée, le profil sRGB standard sRGB Color Space Profile.icm est utilisé.

L’entrée MicroDriver n’est requise que si le fournisseur fournit un microdriver WIA.

Les entrées d’interface utilisateur sont requises uniquement si le fournisseur fournit une interface utilisateur personnalisée pour l’appareil d’imagerie.

Remarques

Lorsque vous développez un fichier INF pour les scanneurs, vous pouvez utiliser des descripteurs de système d’exploitation Microsoft pour activer la fonctionnalité d’ID de compatibilité. Dans ce cas, vous autorisez un pilote de scanneur à être compatible avec plusieurs modèles de scanneur.