Partager via


Schéma de profil d’analyse

Le schéma de profil d’analyse définit un format XML qui peut être utilisé pour stocker les propriétés des éléments d’acquisition d’images Windows (WIA), tels que les scanneurs et les caméras. Ces fichiers persistants permettent aux applications de fournir une analyse automatique sans exiger que les utilisateurs se souviennent des paramètres de propriété des éléments.

Tout appareil IWiaItem2 peut avoir un profil d’analyse. Toutefois, les éléments IWiaItem2 de types WIA_CATEGORY_FINISHED_FILE et WIA_CATEGORY_ROOT ne peuvent pas avoir de profils.

Les profils d’analyse sont créés et gérés via les interfaces IScanProfile, IScanProfileMgr et IScanProfileUI . Les utilisateurs de votre application peuvent modifier les profils de manière limitée à l’aide de la méthode IScanProfileUI::ScanProfileDialog .

Tous les profils d’analyse ont les éléments suivants : <ProfileGUID>, <DeviceID>, <ProfileName>, <WiaItem>, et <Properties>. Le profil par défaut d’un appareil a également un <Default> élément.

L’élément <ProfileGUID> et l’élément <DeviceID> ne peuvent pas être modifiés après la création du profil d’analyse. Les valeurs de l’élément <ProfileName> et de l’élément <WiaItem> peuvent être modifiées. L’élément <Default> peut être ajouté ou supprimé. Pour ce faire, utilisez les méthodes IScanProfile::SetName, IScanProfile::SetItem et IScanProfileMgr::SetDefault . Ces propriétés peuvent également être modifiées par les utilisateurs via la méthode IScanProfileUI::ScanProfileDialog .

L’élément <Properties> contient des <Property> enfants. Utilisez-les pour ajouter un élément WIA ou une propriété d’appareil au profil. Vous pouvez également développer votre propre acquisition d’image <Property> enfants. Cela rend le schéma de profil d’analyse extensible. (Pour plus d’informations sur l’extension du schéma, consultez Définition de propriétés personnalisées, IScanProfile::GetProperty et IScanProfile::SetProperty.)

Voici le schéma complet du profil d’analyse. Un exemple de profil suit.

<?xml version="1.0"?>
<xs:schema xmlns:xs="https://www.w3.org/2001/XMLSchema"
            targetNamespace="https://www.microsoft.com"
            xmlns="https://www.microsoft.com"
            elementFormDefault="qualified">

<xs:element name="ScanProfile">
            <xs:complexType>
            <xs:sequence>
                        <xs:element name="ProfileGUID" type="xs:string"/>
                        <xs:element name="DeviceID" type="xs:string"/>
<xs:element name="ProfileName" type="xs:string"/>
                        <xs:element name="Default" minOccurs="0">
                                    <xs:complexType>
                                    </xs:complexType>
                        </xs:element>
                        <xs:element name="WiaItem" type="xs:string"/>
                        <xs:element name="Properties" type="Properties"/>
            </xs:sequence>
            </xs:complexType>
</xs:element>
 
<xs:complexType name="Properties">
<xs:sequence>
            <xs:element name="Property" maxOccurs="unbounded" minOccurs="0">
            <xs:complexType>
            <xs:simpleContent>
                        <xs:extension base="xs:string">
                                    <xs:attribute name="id" type="xs:integer" use="required"/>
                                    <xs:attribute name="type" type="xs:integer" use="required"/>
                        </xs:extension>
            </xs:simpleContent>
            </xs:complexType>
            </xs:element>
</xs:sequence>
</xs:complexType>
 
</xs:schema>

Cliquez sur Afficher l’exemple pour afficher un exemple de profil.

<ScanProfile>
    <ProfileGUID>
        {F862E217-32B0-4396-987A-2191224925CD}
    </ProfileGUID>
    <DeviceID>
        {6BDD1FC6-810F-11D0-BEC7-08002BE2092F}\0001
    </DeviceID>
    <ProfileName>
        Last used settings
    </ProfileName>
    <WiaItem>
        {FB607B1F-43F3-488B-855B-FB703EC342A6}
    </WiaItem>
    <Properties>
        <Property id="4103" type="3">
            3
        </Property>
        <Property id="4106" type="72">
            {B96B3CAB-0728-11D3-9D7B-0000F81EF32E}
        </Property>
        <Property id="6147" type="3">
            300
        </Property>
        <Property id="6154" type="3">
            0
        </Property>
        <Property id="6155" type="3">
            0
        </Property>
    </Properties>
</ScanProfile>

Informations de référence

IScanProfile::GetProperty

IScanProfile::SetProperty

Conceptuel

Constantes de propriété WIA

Définition de propriétés personnalisées