Condividi tramite


Metodo GetInfo

Il metodo IADs::GetInfo carica tutti i valori di attributo per un oggetto ADSI nella cache locale dal servizio directory sottostante. Il metodo IADs::GetInfoEx viene usato per caricare valori di attributo specifici nella cache locale. Per altre informazioni sull'uso del metodo IADs::GetInfoEx , vedere Ottimizzazione tramite GetInfoEx.

ADSI effettuerà una chiamata IADs::GetInfo implicita quando viene chiamato il metodo IADs::Get o IADs::GetEx per un attributo specifico e non viene trovato alcun valore nella cache locale. Quando è stato chiamato IADs::GetInfo , una chiamata implicita non viene ripetuta. Se nella cache delle proprietà esiste già un valore, tuttavia, la chiamata al metodo IADs::Get o IADs::GetEx senza prima chiamare IADs::GetInfo recupererà il valore memorizzato nella cache anziché il valore più recente dalla directory sottostante. Ciò può causare la sovrascrittura dei valori degli attributi aggiornati se la cache locale è stata modificata, ma i valori non sono stati sottoposti a commit nel servizio directory sottostante con una chiamata al metodo IADs::SetInfo . Per evitare problemi di memorizzazione nella cache, eseguire il commit delle modifiche al valore dell'attributo chiamando IADs::SetInfo prima di chiamare IADs::GetInfo.

Dim usr As IADs

' Bind to a specific user object.
Set usr = GetObject("LDAP://CN=Jeff Smith,CN=Users,DC=fabrikam,DC=com")
 
' This code example assumes that the property description has a single value in the directory.
' Be aware that this will IMPLICITLY call GetInfo because at this point GetInfo
' has not yet been called (implicitly or explicitly) on the usr object.
Debug.Print "User's title is " + usr.Get("title")

' Change the attribute value in the local cache.
usr.Put "title", "Vice President"
Debug.Print "User's title is " + usr.Get("title")

' Call GetInfo, which will overwrite the updated value because SetInfo has not 
' been called.
usr.GetInfo
Debug.Print "User's title is " + usr.Get("title")

Alcuni servizi directory non restituiscono tutti i valori di attributo per un oggetto in risposta a una chiamata IADs::GetInfo . In questi casi, usare il metodo IADs::GetInfoEx per caricare questi valori nella cache locale.