Mappage des propriétés WIA qui ne nécessitent aucune modification - Cas spéciaux
Les cas où la couche de compatibilité peut échouer sont les suivants :
Les propriétés Windows XP manquantes/endommagées liées aux propriétés Windows Vista requises peuvent rendre la couche de compatibilité indisponible. Dans ce cas, la session actuelle échoue ; l’option de continuer n’est pas disponible en raison de différences de structure d’élément et de propriétés entre les pilotes et applications Windows XP et Windows Vista (le proxy COM de l’application ne peut pas fonctionner dans ce cas). Les propriétés WIA_DPS_DOCUMENT_HANDLING_SELECT et WIA_DPS_DOCUMENT_HANDLING_CAPABILITIES sont un cas particulier ; s’ils ne sont pas pris en charge par le pilote Windows XP, seul un élément FLATBED sera traduit pour l’application Windows Vista
Certaines propriétés racine de Windows XP qui dépendent d’un contexte spécifique (FLATBED, FEEDER ou un contexte de propriété) peuvent ne pas être disponibles, sauf si ce contexte spécifique est défini, ou si ces propriétés peuvent avoir des valeurs valides et actuelles différentes pour chaque contexte. WIA_DPS_DOCUMENT_HANDLING_SELECT sera utilisé pour définir le contexte FEEDER/FLATBED correct ; il sera défini sur FEEDER (plus DUPLEX si nécessaire) ou FLATBED sur l’élément racine du pilote Windows XP. Dans tous les autres cas, le contexte doit être défini par la propriété appropriée. C’est également le cas lorsque l’appareil Windows XP prend en charge FEEDER et FLATBED, et que toutes les propriétés racine peuvent être traduites en éléments FLATBED et FEEDER dans Windows Vista.
Pour les propriétés Windows Vista en double traduites de/vers des propriétés Windows XP uniques, le service WIA doit décider comment traiter le cas où la même propriété est définie sur des valeurs différentes à partir d’éléments Windows Vista différents. La solution consiste à réinitialiser toutes les propriétés d’élément A-AIT de Windows XP chaque fois que le contexte est modifié. De cette façon, des ensembles distincts de propriétés peuvent être négociés à partir d’une application Windows XP pour les éléments FEEDER et FLATBED du pilote Windows Vista.
Si le pilote Windows Vista n’implémente pas d’élément FEEDER ou FLATBED (par exemple, le pilote peut implémenter uniquement des éléments film/TPA (adaptateur de transparence) et/ou des éléments de stockage), la couche de compatibilité ne sera pas disponible. Il n’est pas sûr de supposer qu’un élément enfant Windows XP générique peut toujours être créé pour les éléments de stockage et/ou film/TPA Windows Vista. De plus, encore plus de complications pourraient survenir si le pilote Windows Vista implémente à la fois un film/TPA et des éléments de stockage. Par conséquent, la couche de compatibilité ne fonctionnera pas pour les pilotes Windows Vista qui n’implémentent pas au moins un élément FLATBED ou un élément FEEDER.
Si le pilote Windows XP n’implémente pas une structure d’élément Windows XP correcte (élément d’analyse racine plus enfant), par exemple, si le pilote implémente partiellement la prise en charge de la nouvelle structure d’éléments Windows Vista mais ne parvient pas à fournir une prise en charge complète pour les transferts d’images Windows Vista, la couche de compatibilité propriété/élément est désactivée et la session actuelle échoue.