Freigeben über


wiasSetItemPropAttribs-Funktion (wiamdef.h)

Die wiasSetItemPropAttribs Funktion legt die Zugriffskennzeichnungen und gültigen Werte für den Satz von Eigenschaften eines Elements fest.

Syntax

HRESULT wiasSetItemPropAttribs(
  [in] BYTE               *pWiasContext,
       LONG               cPropSpec,
  [in] PROPSPEC           *pPropSpec,
  [in] PWIA_PROPERTY_INFO pwpi
);

Parameter

[in] pWiasContext

Zeiger auf einen WIA-Elementkontext.

cPropSpec

Gibt die Anzahl der Eigenschaften an.

[in] pPropSpec

Zeiger auf das erste Element eines Arrays von PROPSPEC-Strukturen (definiert in der Microsoft Windows SDK-Dokumentation), der die Eigenschaften angibt, für die gültige Werte und Zugriffskennzeichnungen festgelegt werden sollen.

[in] pwpi

Zeigen Sie auf das erste Element eines Arrays von WIA_PROPERTY_INFO Strukturen, die die zu schreibenden Eigenschaftswerte enthalten.

Rückgabewert

Bei Erfolg gibt die Funktion S_OK zurück. Wenn die Funktion fehlschlägt, wird ein Standard-COM-Fehler oder ein WIA_ERROR_XXX Fehler zurückgegeben (in der Windows SDK-Dokumentation beschrieben).

Bemerkungen

Minidriver sollten diese Funktion verwenden, um Gruppen einfacher Eigenschaften zu initialisieren. Die Gruppen von Eigenschaften können Bitsets, Wertebereiche oder Wertelisten sein. Die unterstützten einfachen Typen, gruppiert nach Attribut, sind wie folgt.

Attribute Unterstützte Typen
WIA_PROP_FLAG VT_UI1, VT_UI2, VT_UI4, VT_UI8, VT_I1, VT_I2, VT_I4, VT_I8
WIA_PROP_RANGE VT_UI1, VT_UI2, VT_UI4, VT_UI8, VT_I1, VT_I2, VT_I4, VT_I8, VT_R4, VT_R8
WIA_PROP_LIST VT_UI1, VT_UI2, VT_UI4, VT_UI8, VT_I1, VT_I2, VT_I4, VT_I8, VT_R4, VT_R8, VT_BSTR

Minidriver sollten komplexe Eigenschaften mithilfe der wiasSetPropertyAttributes-Funktion initialisieren.

Der Minidriver kann das WIA_PROP_CACHEABLE Flag für eine Eigenschaft festlegen, die sich im Laufe der Zeit nicht ändert. Durch Festlegen dieses Flags für eine Eigenschaft gibt der Minidriver an, dass der WIA-Dienst den Eigenschaftswert zwischenspeichern kann. Eine Liste aller Eigenschaftenattribute finden Sie in der Windows SDK-Dokumentation.

Es ist wichtig zu beachten, dass wiasSetItemPropAttribs ein HRESULT zurückgibt, nicht ein BOOLEAN. Wenn z. B. wiasSetItemPropAttri bs 0 zurückgibt, muss dieser Wert als S_OK und nicht als FALSE-interpretiert werden und gibt an, dass alles wie erwartet funktioniert hat. Wenn wiasSetItemPropAttribs den HRESULT-S_FALSE zurückgibt, gibt dies an, dass eine der Eigenschaften, die Sie festlegen möchten, wahrscheinlich nicht im Eigenschaftendatenstrom vorhanden ist.

Um ein Wiadebug-Protokoll dieses Fehlers zu erhalten, öffnen Sie die Registrierung, und aktivieren Sie die WIA-Protokollierung für Warnungen und Fehler. Der Registrierungsschlüssel hierfür lautet: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\StillImage\Debug\wiaservc.dll

Legen Sie den Wert von "DebugFlags" auf 0x00000003

Starten Sie das System neu, und wiederholen Sie die Schritte, die erforderlich sind, um diesen Fehler zu erzeugen. Es wird nun eine Datei namens "wiadebug.log" in %windir% Verzeichnis vorhanden sein.

Anforderungen

Anforderung Wert
Zielplattform- Desktop
Header- wiamdef.h (include Wiamdef.h)
Library Wiaservc.lib
DLL- Wiaservc.dll

Siehe auch

WIA_PROPERTY_INFO

wiasSetItemPropNames-

wiasSetPropertyAttributes