IOPCItemProperties::GetItemProperties
Previous  Top  Next

HRESULT   GetItemProperties(  
[in] LPWSTR szItemID,  
[in] DWORD dwCount,  
[in, size_is(dwCount)] DWORD * pdwPropertyIDs,  
[out, size_is(,dwCount)] VARIANT ** ppvData,  
[out, size_is(,dwCount)] HRESULT **ppErrors  
);  
 
Descrizione
Restituisce una lista dei valori dei dati correnti per i codici ID passatigli.

Parametri
Descrizione
SzItemID
L' ItemID per il quale il chiamante vuole leggere l'elenco delle proprietà.
DwCount
Il numero degli attributi passati.
PpPropertyIDs
DWORD IDs per gli attributi richiesti. Questi IDs vengono restituiti da QueryAvailableProperties o ottenuti dagli elenchi descritti prima.
PpvData
Un array di count VARIANTS,restituito dal server, che contiene i valori correnti delle proprietà richieste.
PpErrors
Error array indicante se ogni proprietà è stata restituita


Codici Restituiti

Codici Restituiti
Descrizione
S_OK
L'operazione ha avuto successo.
OPC_E_UNKNOWNITEMID
L' ItemID non è presente nello spazio degli indirizzi del server
OPC_E_INVALIDITEMID
L' ItemID non è sintatticamente valido
E_OUTOFMEMORY
Non c'è memoria a sufficienza.
E_INVALIDARG
Un argomento passato alla funzione era invalido
E_FAIL
La funzione non ha avuto successo.


Codici di Errore

Codici Restituiti
Descrizione
S_OK
La corrispondente PropertyID è stata letta.
OPC_E_INVALID_PID
La Propietà ID non è definita per questo item.
E_xxx
La Proprietà ID passata non può essere letta. Il server può ritornare uno specifico codice di errore per fornire un chiarimento del perchè questa proprietà non può essere letta. Questo codice di errore può essere passato a GetErrorMessage. In genere questa sarà la stessa collezione di errori ritornati dalla funzione Read di OPC.


Commenti
Il chiamante deve liberare le Variants egli Errors array restituitigli. Il client deve prima fare un VariantClear () su ciascuna delle Variants restituitegli.
I Clients non dovrebbero usare questa interfaccia per ottenere grandi quantità di dati.