Eigenschaftenblatterweiterungen
Das Kontextmenüelement Eigenschaften bietet Zugriff auf Scanner- oder Kameraeigenschaftenblätter im Ordner Scanner und Kameras Systemsteuerung Ordners für Geräte (Stammelemente) oder im Ordner "Arbeitsplatz".
Eigenschaftenblatterweiterungen für Kameras und Scanner können auch eine Benutzeroberfläche für bestimmte Bilderfassungssitzungen bereitstellen, d. h. nicht stammige IWiaItem-Objekte (siehe Microsoft Windows SDK Dokumentation), die aktiv sind, wenn der Benutzer das Standardscandialogfeld verwendet. Auf diese Erweiterungen kann über einen Link für erweiterte Eigenschaften oder erweiterte Einstellungen im Dialogfeld "Bilderfassung" zugegriffen werden. Wenn eine Aktion im Kontextmenü für eine Eigenschaft ausgewählt wird, erstellt WIA das Eigenschaftenblatt mithilfe der vom Anbieter bereitgestellten Implementierung der Schnittstellen IShellExtInit und IShellPropSheetExt (siehe Windows SDK-Dokumentation).
Sowohl für Eigenschaftenblatt- als auch Kontextmenü-UI-Erweiterungen verwendet die IDataObject-Schnittstelle (beschrieben in der Windows SDK-Dokumentation), die die ausgewählten Elemente beschreibt, entweder das WIAItemNames-Format oder das WIAItemPointer-Format. Diese Formate und ihre Formatnamen werden in wiadevd.h definiert.
Das WIAItemNames-Format, dessen Formatname CFSTR_WIAITEMNAMES ist, gibt einen HGLOBAL-Wert zurück, der auf eine Liste mit doppeltem NULL-Termin mit IWiaItem-Bezeichnern verweist. Jeder Bezeichner hat das Format <Geräte-ID>::<vollständiger Pfadname>. Bei Stammelementen ist der vollständige Pfadname-Teil leer.
Das WIAItemPointer-Format wird in Versionen von Microsoft Windows XP und höher unterstützt. Der Formatname ist CFSTR_WIAITEMPTR. Das WIAItemPointer-Format gibt eine STGMEDIUM-Struktur (deklariert in der Windows SDK-Dokumentation) zurück, deren Tymed-Member auf TYMED_ISTREAM festgelegt ist. Dieses Format kann verwendet werden, wenn der Benutzer nur ein einzelnes Element auswählt. Das Eigenschaftenblatt oder die Kontexterweiterung kann CoUnmarshalInterface für das in der STGMEDIUM-Struktur gespeicherte IStream-Objekt aufrufen, um eine IWiaItem-Schnittstelle abzurufen. (Beschreibungen der CoUnmarshalInterface-Funktion und der IStream - und IWiaItem-Schnittstellen finden Sie in der Windows SDK-Dokumentation.) Mit diesem Format kann jede Seite auf dem Eigenschaftenblatt eine ordnungsgemäß gemarshallte IWiaItem-Schnittstelle gemeinsam nutzen, was bei Überprüfungen wichtig ist.