ADsSetLastError-Funktion (adshlp.h)
Der ADsSetLastError legt den Codewert des letzten Fehlers für den aufrufenden Thread fest. Verzeichnisdienstanbieter können diese Funktion verwenden, um erweiterte Fehler festzulegen. Die Funktion speichert die Fehlerdaten in einer Datenstruktur pro Thread. ADsSetLastError funktioniert ähnlich wie die SetLastError-Funktion .
Syntax
void ADsSetLastError(
[in] DWORD dwErr,
[in] LPCWSTR pszError,
[in] LPCWSTR pszProvider
);
Parameter
[in] dwErr
Art: DWORD
Der aufgetretene Fehlercode. Wenn dies ein von Windows definierter Fehler ist, wird pszError ignoriert. Wenn dies ERROR_EXTENDED_ERROR ist, gibt dies an, dass der Anbieter einen netzwerkspezifischen Fehler zu melden hat.
[in] pszError
Typ: LPWSTR
Die mit Null beendete Unicode-Zeichenfolge, die den netzwerkspezifischen Fehler beschreibt.
[in] pszProvider
Typ: LPWSTR
Die mit NULL beendete Unicode-Zeichenfolge, die den ADSI-Anbieter benennt, der den Fehler ausgelöst hat.
Rückgabewert
Keine
Bemerkungen
In einer benutzerdefinierten Implementierung eines ADSI-Anbieters, z. B. einem LDAP-Anbieter, können Sie eine Vorgangsfehlermeldung wie folgt festlegen.
ADsSetLastError(HRESULT_FROM_WIN32(ERROR_DS_OPERATIONS_ERROR),
L"ERROR_DS_OPERATIONS_ERROR",
L"LDAP Provider");
Der Benutzer kann das folgende Codebeispiel verwenden, um diesen Vorgangscode zu untersuchen.
DWORD dwLastError;
WCHAR szErrorBuf[MAX_PATH];
WCHAR szNameBuf[MAX_PATH];
// Get extended error value.
HRESULT hr_return =S_OK;
hr_return = ADsGetLastError( &dwLastError,
szErrorBuf,
MAX_PATH,
szNameBuf,
MAX_PATH);
if (SUCCEEDED(hr_return))
{
wprintf(L"Error Code: %d\n Error Text: %ws\n Provider: %ws\n", dwLastError, szErrorBuf, szNameBuf);
}
Im vorherigen Codebeispiel wird die folgende Ausgabe für den oben festgelegten Fehlercode für Vorgänge erzeugt.
Error value: 80072020
Error Text: ERROR_DS_OPERATIONS_ERROR
Provider: LDAP Provider
Wenn Sie ERROR_DS_OPERATIONS_ERROR verwenden, ohne beim Festlegen des Fehlers das makro HRESULT_FROM_WIN32 aufrufen zu müssen, wird die folgende Ausgabe zurückgegeben.
Error value: 2020
Error Text: ERROR_DS_OPERATIONS_ERROR
Provider: LDAP Provider
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista |
Unterstützte Mindestversion (Server) | Windows Server 2008 |
Zielplattform | Windows |
Kopfzeile | adshlp.h |
Bibliothek | Activeds.lib |
DLL | Activeds.dll |