Condividi tramite


Funzione wiasSetItemPropAttribs (wiamdef.h)

La funzione wiasSetItemPropAttribs imposta i flag di accesso e i valori validi per il set di proprietà di un elemento.

Sintassi

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

Parametri

[in] pWiasContext

Puntatore a un contesto di elemento WIA.

cPropSpec

Specifica il numero di proprietà.

[in] pPropSpec

Puntatore al primo elemento di una matrice di strutture PROPSPEC (definite nella documentazione di Microsoft Windows SDK) che indica le proprietà per cui impostare valori validi e flag di accesso.

[in] pwpi

Puntatore al primo elemento di una matrice di strutture WIA_PROPERTY_INFO che contengono i valori delle proprietà da scrivere.

Valore restituito

In caso di esito positivo, la funzione restituisce S_OK. Se la funzione ha esito negativo, restituisce un errore COM standard o uno degli errori WIA_ERROR_XXX (descritti nella documentazione di Windows SDK).

Commenti

I minidriver devono usare questa funzione per inizializzare gruppi di proprietà semplici. I gruppi di proprietà possono essere bitset, intervalli di valori o elenchi di valori. I tipi semplici supportati, raggruppati per attributo, sono i seguenti.

Attributi Tipi supportati
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

I minidriver devono inizializzare proprietà complesse usando la funzione wiasSetPropertyAttributes .

Il minidriver può impostare il flag WIA_PROP_CACHEABLE su una proprietà che non cambia nel tempo. Impostando questo flag su una proprietà, il minidriver indica che il servizio WIA può memorizzare nella cache il valore della proprietà. Per un elenco di tutti gli attributi di proprietà, vedere la documentazione Windows SDK.

È importante ricordare che wiasSetItemPropAttribs restituisce un valore HRESULT, non un valore BOOLEAN. Ad esempio, se wiasSetItemPropAttribs restituisce 0, questo valore deve essere interpretato come S_OK anziché FALSE e indica che tutto funziona come previsto. Se wiasSetItemPropAttribs restituisce il S_FALSE HRESULT, indica che una delle proprietà che si sta tentando di impostare probabilmente non esiste nel flusso di proprietà.

Per ottenere un log wiadebug di questo errore, aprire il Registro di sistema e attivare la registrazione WIA per avvisi ed errori. La chiave del Registro di sistema è: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\StillImage\Debug\wiaservc.dll

Impostare il valore di "DebugFlags" su 0x00000003

Riavviare il sistema e ripetere i passaggi necessari per generare questo errore. Verrà ora creato un file denominato "wiadebug.log" nella directory %windir%.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione wiamdef.h (include Wiamdef.h)
Libreria Wiaservc.lib
DLL Wiaservc.dll

Vedi anche

WIA_PROPERTY_INFO

wiasSetItemPropNames

wiasSetPropertyAttributes