Metodo IWiaPropertyStorage::GetPropertyAttributes (wia_xp.h)
Il metodo IWiaPropertyStorage::GetPropertyAttributes recupera i diritti di accesso e le informazioni sul valore legale per un set specificato di proprietà.
Sintassi
HRESULT GetPropertyAttributes(
[in] ULONG cpspec,
[in] PROPSPEC [] rgpspec,
[out] ULONG [] rgflags,
[out] PROPVARIANT [] rgpropvar
);
Parametri
[in] cpspec
Tipo: ULONG
Specifica il numero di attributi delle proprietà da eseguire in query.
[in] rgpspec
Tipo: PROPSPEC[]
Specifica una matrice di costanti della proprietà Device Information. Ogni costante nella matrice seleziona una proprietà da eseguire per la query.
[out] rgflags
Tipo: ULONG[]
Matrice che riceve un descrittore dell'attributo di proprietà per ogni proprietà specificata nella matrice rgpspec . Ogni elemento della matrice è uno o più valori descrittori combinati con un'operazione OR bit per bit.
[out] rgpropvar
Tipo: PROPVARIANT[]
Matrice che riceve un descrittore dell'attributo di proprietà per ogni proprietà specificata nella matrice pPROPSPEC . Per altre informazioni, vedere PROPVARIANT.
Valore restituito
Tipo: HRESULT
Questo metodo restituisce uno dei valori seguenti o un codice di errore COM standard:
Valore restituito | Significato |
---|---|
S_OK | Questo metodo ha avuto esito positivo. |
S_FALSE | I nomi delle proprietà specificati non esistono. Non sono stati recuperati attributi. |
STG_E_ACCESSDENIED | L'applicazione non ha accesso al flusso di proprietà o il flusso potrebbe essere già aperto. |
STG_E_INSUFFICIENTMEMORY | Memoria insufficiente per completare l'operazione. |
ERROR_NOT_SUPPORTED | Il tipo di proprietà non è supportato. |
STG_E_INVALIDPARAMETER | Uno o più parametri non sono validi. Una o più strutture PROPSPEC contengono dati non validi. |
STG_E_INVALIDPOINTER | Uno o più puntatori passati a questo metodo non sono validi. |
ERROR_NO_UNICODE_TRANSLATION | Non è riuscita una traduzione da Unicode a ANSI o ANSI a Unicode. |
Commenti
Questo metodo recupera sia i diritti di accesso alle proprietà che i valori di proprietà validi. I diritti di accesso segnalano se la proprietà è leggibile, scrivibile o entrambe. I valori delle proprietà validi vengono specificati come intervallo di valori, un elenco di valori o un gruppo di valori flag. Per altre informazioni, vedere Attributi delle proprietà.
Se il flag dei diritti di accesso alla proprietà ha il set di WIA_PROP_NONE bit, non sono disponibili informazioni sul valore legale per questa proprietà. Leggere solo proprietà e proprietà con un tipo di dati binario sono esempi di proprietà che avrebbero il set di bit WIA_PROP_NONE .
Se la proprietà ha un intervallo di valori validi, è possibile determinare tramite il parametro rgpropvar al completamento di questo metodo. Il parametro ppvValidValues specifica una matrice di strutture PROPVARIANT .
Ad esempio, se l'intervallo di proprietà viene specificato come VT_VECTOR | VT_UI4, le informazioni sull'intervallo possono essere recuperate tramite il membro della struttura
rgpropvar[n].caul.pElems[range_specifier]
dove n è il numero di indice della proprietà controllata e range_specifier è uno dei seguenti:
Identificatore di intervallo | Significato |
---|---|
WIA_RANGE_MAX | Valore massimo a cui può essere impostata la proprietà. |
WIA_RANGE_MIN | Valore minimo a cui può essere impostata la proprietà. |
WIA_RANGE_NOM | Valore normale o predefinito della proprietà. |
WIA_RANGE_STEP | Incremento o decremento tra i valori delle proprietà. |
Se la proprietà ha un elenco di valori validi, le applicazioni determinano tramite il parametro ppvValidValues al completamento di questo metodo.
Ad esempio, se l'intervallo di proprietà viene specificato come VT_VECTOR | VT_UI4, è possibile recuperare l'elenco di valori di proprietà validi tramite il membro della struttura
rgpropspecValues[n].caul.pElems[list_specifier]
dove n è il numero di indice della proprietà controllata e list_specifier è uno dei seguenti:
Identificatore di intervallo | Significato |
---|---|
WIA_LIST_COUNT | Numero totale di elementi di elenco esclusi il valore nominale. |
WIA_LIST_NOM | Valore nominale per la proprietà. |
WIA_LIST_VALUES | Numero di indice del primo valore. |
I programmi usano anche il parametro ppvValidValues per recuperare valori di flag validi. Ad esempio, se i flag di proprietà vengono specificati come VT_UI4, i valori di flag validi possono essere determinati tramite il membro della struttura
rgpropspec[n].caul.pElems[flag_specifier]
dove n è il numero di indice della proprietà controllata e flag_specifier è uno dei seguenti:
Identificatore di intervallo | Significato |
---|---|
WIA_FLAG_NOM | Valore nominale per la proprietà. |
WIA_FLAG_NUM_ELEMS | Numero totale di elementi di elenco esclusi il valore nominale. |
WIA_FLAG_VALUES | Tutti i valori con tutti i bit di flag validi impostati. |
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional, Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | wia_xp.h (includere Wia.h) |
Libreria | Wiaguid.lib |
DLL | Wiaservc.dll |