Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die IADs::GetInfoEx-Methode lädt die Werte der angegebenen Eigenschaften des ADSI-Objekts aus dem zugrunde liegenden Verzeichnisspeicher in den Eigenschaftencache.
Syntax
HRESULT GetInfoEx(
[in] VARIANT vProperties,
[in] long lnReserved
);
Parameter
[in] vProperties
Array von Unicode-Zeichenfolgeneinträgen mit Null-Beendigung, die die Eigenschaften auflisten, die in den Active Directory-Eigenschaftencache geladen werden sollen. Jeder Eigenschaftsname muss mit einem in der Schemaklassendefinition dieses Objekts übereinstimmen.
[in] lnReserved
Für die zukünftige Verwendung reserviert. Muss auf 0 festgelegt werden.
Rückgabewert
Diese Methode unterstützt die Standardrückgabewerte sowie folgendes.
Weitere Informationen finden Sie unter ADSI-Fehlercodes.
Hinweise
Die IADs::GetInfoEx-Methode überschreibt alle zuvor zwischengespeicherten Werte der angegebenen Eigenschaften mit denen im Verzeichnisspeicher. Daher gehen alle änderungen am Cache verloren, wenn IADs::SetInfo vor dem Aufruf von IADs::GetInfoEx nicht aufgerufen wurde.
Verwenden Sie IADs::GetInfoEx , um Die Werte der ausgewählten Eigenschaft im Eigenschaftencache eines ADSI-Objekts zu aktualisieren. Verwenden Sie IADs::GetInfo , um alle Eigenschaftswerte zu aktualisieren.
Für ein ADSI-Containerobjekt speichert IADs::GetInfoEx nur die Eigenschaftswerte des Containers, nicht aber die werte der untergeordneten Objekte zwischen.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sie die IADs::GetInfoEx verwenden, um Werte der ausgewählten Eigenschaften abzurufen, vorausgesetzt, dass die gewünschten Eigenschaftswerte im Verzeichnis gefunden werden können.
Dim x As IADs
On Error GoTo Cleanup
Set x = GetObject("LDAP://CN=JeffSmith,CN=Users,DC=Fabrikam,DC=com")
' Retrieve givenName and sn from the underlying directory storage.
' Cache should have givenName and sn values.
x.GetInfoEx Array("givenName", "sn"), 0
Debug.Print x.Get("givenName") ' Property is in the cache.
Debug.Print x.Get("sn") ' Property is in the cache.
' If the "homePhone" property is not in the cache (in the next line),
' GetInfo is called implicitly.
Debug.Print x.Get("homePhone")
Cleanup:
If(Err.Number<>0) Then
MsgBox("An error has occurred. " & Err.Number);
End If
Set x = Nothing
Im folgenden Codebeispiel wird veranschaulicht, wie Sie die IADs::GetInfoEx verwenden, um Werte der ausgewählten Eigenschaften abzurufen, vorausgesetzt, dass die gewünschten Eigenschaftswerte im Verzeichnis gefunden werden können. Aus Gründen der Kürze wurde die Fehlerüberprüfung weggelassen.
IADs *pADs = NULL;
VARIANT var;
HRESULT hr = S_OK;
hr = ADsGetObject(L"WinNT://somecomputer,computer",
IID_IADs,
(void**)&pADs);
if(!(hr==S_OK)){return hr;}
VariantInit(&var);
// Get "Owner" and "Division" attribute values.
LPWSTR pszAttrs[] = { L"Owner", L"Division" };
DWORD dwNumber = sizeof( pszAttrs ) /sizeof(LPWSTR);
hr = ADsBuildVarArrayStr( pszAttrs, dwNumber, &var );
hr = pADs->GetInfoEx(var, 0);
VariantClear(&var);
hr = pADs->Get(CComBSTR("Division"), &var);
printf(" division = %S\n", V_BSTR(&var));
VariantClear(&var);
hr = pADs->Get(CComBSTR("Owner"), &var);
printf(" owner = %S\n", V_BSTR(&var));
VariantClear(&var);
if(pADs)
pADs->Release();
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista |
Unterstützte Mindestversion (Server) | Windows Server 2008 |
Zielplattform | Windows |
Kopfzeile | iads.h |
DLL | Activeds.dll |