Función ADsSetLastError (adshlp.h)
ADsSetLastError establece el último valor de código de error para el subproceso que llama. Los proveedores de servicios de directorio pueden usar esta función para establecer errores extendidos. La función guarda los datos de error en una estructura de datos por subproceso. ADsSetLastError funciona de forma similar a la función SetLastError .
Sintaxis
void ADsSetLastError(
[in] DWORD dwErr,
[in] LPCWSTR pszError,
[in] LPCWSTR pszProvider
);
Parámetros
[in] dwErr
Tipo: DWORD
Código de error que se produjo. Si se trata de un error definido por Windows, se omite pszError . Si se ERROR_EXTENDED_ERROR, indica que el proveedor tiene un error específico de la red que se va a notificar.
[in] pszError
Tipo: LPWSTR
Cadena Unicode terminada en null que describe el error específico de la red.
[in] pszProvider
Tipo: LPWSTR
Cadena Unicode terminada en null que asigna el nombre al proveedor ADSI que generó el error.
Valor devuelto
None
Observaciones
En una implementación personalizada de un proveedor ADSI, por ejemplo, un proveedor LDAP, puede establecer un mensaje de error de operación como se indica a continuación.
ADsSetLastError(HRESULT_FROM_WIN32(ERROR_DS_OPERATIONS_ERROR),
L"ERROR_DS_OPERATIONS_ERROR",
L"LDAP Provider");
El usuario puede usar el siguiente ejemplo de código para examinar este código de operación.
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);
}
El ejemplo de código anterior genera la siguiente salida para el código de error de operaciones establecido anteriormente.
Error value: 80072020
Error Text: ERROR_DS_OPERATIONS_ERROR
Provider: LDAP Provider
Si usa ERROR_DS_OPERATIONS_ERROR sin invocar la macro HRESULT_FROM_WIN32 al establecer el error, se devuelve la siguiente salida.
Error value: 2020
Error Text: ERROR_DS_OPERATIONS_ERROR
Provider: LDAP Provider
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista |
Servidor mínimo compatible | Windows Server 2008 |
Plataforma de destino | Windows |
Encabezado | adshlp.h |
Library | Activeds.lib |
Archivo DLL | Activeds.dll |