Códigos de error de la interfaz de Servicios de Active Directory en Windows 2000

Seleccione idioma Seleccione idioma
Id. de artículo: 232282 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Resumen

La Interfaz de Servicios de Active Directory (ADSI) admite las siguientes categorías de códigos de error: códigos de error ADSI, códigos de error COM generales y códigos de error Win32 para el proveedor de Protocolo ligero de acceso a directorios (LDAP). Todos los códigos de error ADSI se devuelven como valores COM HRESULT y pueden agruparse en estas tres categorías.

Asimismo, algunas interfaces proporcionan la información de error adicional, lo que se conoce como mensajes de error ADSI extendidos. Estos mensajes de error pueden obtenerse mediante la función ADsGetLastError.

Más información

Códigos de error ADSI

Cualquier proveedor de sistemas ADSI puede devolver este tipo de código de error para representar mensajes de error específicos de ADSI. Tienen código 5 y su bit de gravedad está establecido en TRUE o FALSE. Si se establece el bit de gravedad en TRUE, los valores de error toman la forma 0x80005xxx y los mensajes de error toman la forma E_ADS_*. Cuando el bit de gravedad se establece en FALSE, los valores de error resultantes tienen la forma 0x00005xxx y los mensajes de error, la forma S_ADS_*.
Contraer esta tablaAmpliar esta tabla
CódigoSímboloDescripción
0x80005000LE_ADS_BAD_PATHNAMESe pasó un nombre de ruta ADSI no válido.
0x80005001LE_ADS_INVALID_DOMAIN_OBJECTSe solicitó un objeto de dominio ADSI desconocido.
0x80005002LE_ADS_INVALID_USER_OBJECTSe solicitó un objeto de usuario ADSI desconocido.
0x80005003LE_ADS_INVALID_COMPUTER_OBJECTSe solicitó un objeto de equipo ADSI desconocido.
0x80005004LE_ADS_UNKNOWN_OBJECTSe solicitó un objeto ADSI desconocido.
0x80005005LE_ADS_PROPERTY_NOT_SETNo se estableció la propiedad ADSI especificada.
0x80005006LE_ADS_PROPERTY_NOT_SUPPORTEDNo se admite la propiedad ADSI especificada.
0x80005007LE_ADS_PROPERTY_INVALIDLa propiedad ADSI especificada es no válida
0x80005008LE_ADS_BAD_PARAMETERAl menos un parámetro no es válido.
0x80005009LE_ADS_OBJECT_UNBOUNDEl objeto ADSI especificado no está enlazado a ningún recurso remoto.
0x8000500ALE_ADS_PROPERTY_NOT_MODIFIEDEl objeto ADSI especificado no ha sido modificado.
0x8000500BLE_ADS_PROPERTY_MODIFIEDEl objeto ADSI especificado ha sido modificado.
0x8000500CLE_ADS_CANT_CONVERT_DATATYPEEl tipo de datos ADSI no puede convertirse a o desde un tipo de datos DS nativo.
0x8000500DLE_ADS_PROPERTY_NOT_FOUNDNo se encuentra la propiedad ADSI en la memoria caché.
0x8000500ELE_ADS_OBJECT_EXISTSEl objeto ADSI existe.
0x8000500FLE_ADS_SCHEMA_VIOLATIONLa acción que se intentó realizar infringe las reglas del esquema del servicio de directorios.
0x80005010LE_ADS_COLUMN_NOT_SETNo se estableció la columna especificada en la interfaz ADSI.
0x00005011LS_ADS_ERRORSOCCURREDSe produjeron uno o más errores.
0x00005012LS_ADS_NOMORE_ROWSLa operación de búsqueda ha alcanzado la última fila.
0x00005013LS_ADS_NOMORE_COLUMNSLa operación de búsqueda ha alcanzado la última columna de la fila actual.
0x80005014LE_ADS_INVALID_FILTEREl filtro de búsqueda especificado no es válido.

Códigos de error de COM genéricos

Los códigos de error de COM genéricos expresan el estado de la operación generado por todos los módulos COM. Están definidos en el archivo Winerror.h.

La tabla siguiente contiene algunos ejemplos de estos códigos de error en cualquier plataforma Win32.
Contraer esta tablaAmpliar esta tabla
Código de errorValor hexadecimal
E_UNEXPECTED0x8000FFFF
E_NOTIMPL0x80004001
E_NOINTERFACE0x80004002
E_POINTER0x80004003
E_ABORT0x80004004
E_FAIL0x80004005

Códigos de error Win32 para LDAP

El proveedor LDAP proporcionado por el sistema asigna los códigos de error LDAP estándar a los siguientes códigos de error Win32. Los códigos de error Win32 estándar también se utilizan para devolver mensajes de error ADSI. Concretamente, el proveedor LDAP de ADSI asigna todos los códigos de error definidos por LDAP a códigos de error Win32. Los valores HRESULT de los códigos de error tienen el formato 0x8007XXXX, donde los cuatro últimos dígitos hexadecimales (XXXX) corresponden a los valores DWORD del código de error Win32 apropiado. Por ejemplo, el valor de error ADSI 0x80072020 da como resultado el valor de error Win32 0x2020 en hexadecimal, o 8224 en decimal.

Los códigos de error Win32 están definidos en el archivo Winerror.h o Lmerr.h. Los valores de error se muestran como valores decimales en estos archivos. Para convertir el valor HRESULT de un código de error ADSI en el valor DWORD del error Win32 correspondiente:
  1. Convierta el valor HRESULT (hrErr) a un número hexadecimal a partir del decimal, en caso de que comience con un valor decimal.
  2. Quite la parte 0x8007 de hrErr para generar el resto (dwErr).
  3. Vuelva a convertir dwErr a un número decimal.
  4. Busque dwErr up en el archivo Winerror.h, ejecute el valor con el comando NET HELPMSG XXXX o use la herramienta Errlook.exe de Microsoft Visual Studio.
  5. Si no se encuentra el resultado, reste 2100 de dwErr y busque el resultado en el archivo Lmerr.h.

Contraer esta tablaAmpliar esta tabla
Error Win32Error LDAPDescripción del código
NO_ERRORLDAP_SUCCESSLa operación finalizó correctamente.
ERROR_DS_OPERATIONS_ERRORLDAP_OPERATIONS_ERRORError en las operaciones.
ERROR_DS_PROTOCOL_ERRORLDAP_PROTOCOL_ERRORError de protocolo.
ERROR_DS_TIMELIMIT_EXCEEDEDLDAP_TIMELIMIT_EXCEEDEDSe ha superado el límite de tiempo
ERROR_DS_SIZELIMIT_EXCEEDEDLDAP_SIZELIMIT_EXCEEDEDSe ha superado el límite de tamaño
ERROR_DS_COMPARE_FALSELDAP_COMPARE_FALSELa comparación dio como resultado FALSE.
ERROR_DS_COMPARE_TRUELDAP_COMPARE_TRUELa comparación dio como resultado TRUE.
ERROR_DS_AUTH_METHOD_NOT_SUPPORTEDLDAP_AUTH_METHOD_NOT_SUPPORTEDNo se admite el método de autenticación.
ERROR_DS_STRONG_AUTH_REQUIREDLDAP_STRONG_AUTH_REQUIREDSe requiere autenticación segura.
ERROR_MORE_DATALDAP_PARTIAL_RESULTSReferencias y resultados parciales recibidos.
ERROR_DS_REFERRALLDAP_REFERRALReferencia
ERROR_DS_ADMIN_LIMIT_EXCEEDEDLDAP_ADMIN_LIMIT_EXCEEDEDSe ha superado el límite de administración en el servidor.
ERROR_DS_UNAVAILABLE_CRIT_EXTENSIONLDAP_UNAVAILABLE_CRIT_EXTENSIONLa extensión crítica no está disponible.
ERROR_DS_CONFIDENTIALITY_REQUIREDLDAP_CONFIDENTIALITY_REQUIREDSe requiere confidencialidad.
ERROR_DS_NO_ATTRIBUTE_OR_VALUELDAP_NO_SUCH_ATTRIBUTEEl atributo requerido no existe.
ERROR_DS_ATTRIBUTE_TYPE_UNDEFINEDLDAP_UNDEFINED_TYPEEl tipo no está definido.
ERROR_DS_INAPPROPRIATE_MATCHINGLDAP_INAPPROPRIATE_MATCHINGCoincidencia inapropiada.
ERROR_DS_CONSTRAINT_VIOLATIONLDAP_CONSTRAINT_VIOLATIONSe infringió una restricción.
ERROR_DS_ATTRIBUTE_OR_VALUE_EXISTSLDAP_ATTRIBUTE_OR_VALUE_EXISTSEl atributo existe o el valor se ha asignado.
ERROR_DS_INVALID_ATTRIBUTE_SYNTAXLDAP_INVALID_SYNTAXLa sintaxis no es válida.
ERROR_DS_NO_SUCH_OBJECTLDAP_NO_SUCH_OBJECTEl objeto no existe.
ERROR_DS_ALIAS_PROBLEMLDAP_ALIAS_PROBLEMEl alias no es válido.
ERROR_DS_INVALID_DN_SYNTAXLDAP_INVALID_DN_SYNTAXLa sintaxis del nombre distintivo no es válida.
ERROR_DS_IS_LEAFLDAP_IS_LEAFEl objeto es una hoja.
ERROR_DS_ALIAS_DEREF_PROBLEMLDAP_ALIAS_DEREF_PROBLEMNo se puede eliminar la referencia al alias.
ERROR_DS_INAPPROPRIATE_AUTHLDAP_INAPPROPRIATE_AUTHAutenticación inapropiada.
ERROR_LOGON_FAILURELDAP_INVALID_CREDENTIALSLa credencial proporcionada no es válida.
ERROR_ACCESS_DENIEDLDAP_INSUFFICIENT_RIGHTSEl usuario no tiene suficientes derechos de acceso.
ERROR_DS_BUSYLDAP_BUSYEl servidor está ocupado.
ERROR_DS_UNAVAILABLELDAP_UNAVAILABLEEl servidor no está disponible.
ERROR_DS_UNWILLING_TO_PERFORMLDAP_UNWILLING_TO_PERFORMEl servidor no responde.
ERROR_DS_LOOP_DETECTLDAP_LOOP_DETECTSe detectó un bucle.
ERROR_DS_NAMING_VIOLATIONLDAP_NAMING_VIOLATIONSe produjo una infracción de nomenclatura.
ERROR_DS_OBJ_CLASS_VIOLATIONLDAP_OBJECT_CLASS_VIOLATIONSe produjo una infracción de la clase de objeto.
ERROR_DS_CANT_ON_NON_LEAFLDAP_NOT_ALLOWED_ON_NONLEAFSólo se admite la operación en un objeto de hoja.
ERROR_DS_CANT_ON_RDNLDAP_NOT_ALLOWED_ON_RDNNo se admite la operación en RDN.
ERROR_OBJECT_ALREADY_EXISTSLDAP_ALREADY_EXISTSEl objeto ya existe.
ERROR_DS_CANT_MOD_OBJ_CLASSLDAP_NO_OBJECT_CLASS_MODSNo se puede modificar la clase del objeto.
ERROR_DS_OBJECT_RESULTS_TOO_LARGELDAP_RESULTS_TOO_LARGELos resultados devueltos son demasiado grandes.
ERROR_DS_AFFECTS_MULTIPLE_DSASLDAP_AFFECTS_MULTIPLE_DSASVarios agentes del servicio de directorio están afectados.
ERROR_GEN_FAILURELDAP_OTHERError desconocido.
ERROR_DS_SERVER_DOWNLDAP_SERVER_DOWNNo se puede conectar con el servidor LDAP
ERROR_DS_LOCAL_ERRORLDAP_LOCAL_ERRORError local.
ERROR_DS_ENCODING_ERRORLDAP_ENCODING_ERRORError de codificación.
ERROR_DS_DECODING_ERRORLDAP_DECODING_ERRORError de descodificación.
ERROR_TIMEOUTLDAP_TIMEOUTSe agotó el tiempo de espera de la búsqueda.
ERROR_DS_AUTH_UNKNOWNLDAP_AUTH_UNKNOWNError de autenticación desconocido.
ERROR_DS_FILTER_UNKNOWNLDAP_FILTER_ERROREl filtro de búsqueda es incorrecto.
ERROR_CANCELLEDLDAP_USER_CANCELLEDEl usuario ha cancelado la operación.
ERROR_DS_PARAM_ERRORLDAP_PARAM_ERRORSe pasó un parámetro incorrecto a una rutina.
ERROR_NOT_ENOUGH_MEMORYLDAP_NO_MEMORYMemoria del sistema insuficiente.
ERROR_CONNECTION_REFUSEDLDAP_CONNECT_ERRORNo se puede establecer la conexión.
ERROR_DS_NOT_SUPPORTEDLDAP_NOT_SUPPORTEDNo se admite la característica.
ERROR_DS_NO_RESULTS_RETURNEDLDAP_NO_RESULTS_RETURNEDNo se devuelven los resultados.
ERROR_DS_CONTROL_NOT_FOUNDLDAP_CONTROL_NOT_FOUNDNo se encontró el control.
ERROR_MORE_DATALDAP_MORE_RESULTS_TO_RETURNSe devolverán más resultados.
ERROR_DS_CLIENT_LOOPLDAP_CLIENT_LOOPSe detectó un bucle del cliente.
ERROR_DS_REFERRAL_LIMIT_EXCEEDEDLDAP_REFERRAL_LIMIT_EXCEEDEDSe ha superado el límite de referencias.

Mensajes de error ADSI extendidos

Además de los valores HRESULT, varios proveedores del sistema ADSI (principalmente LDAP, pero también NDS y NWCOMPAT) devuelven información de error adicional para todas las operaciones realizadas por las interfaces siguientes:
  • IADs
  • IADsContainer
  • IDirectoryObject
  • IDirectorySearch
Una parte de dicha información de error extendida es la cadena enviada por el servidor como parte del resultado del mensaje.

Se llama a ADsGetLastError para recuperar estos mensajes de error extendidos. El primer parámetro de esta función (lpError) es un valor DWORD. Para un servidor de Active Directory, este valor se establecerá, sobre una base comercialmente razonable, en un valor de código de error Win32 adecuado. Cuando el servidor de Active Directory devuelve un error que no se puede asignar a ningún valor de error Win32, lpError se establece en ERROR_INVALID_DATA. Asimismo, para cualquier otro servidor de directorios, este parámetro se establece también en ERROR_INVALID_DATA. El segundo parámetro (lpErrorBuf) siempre contiene la cadena devuelta al servidor.

Propiedades

Id. de artículo: 232282 - Última revisión: miércoles, 23 de agosto de 2006 - Versión: 2.0
La información de este artículo se refiere a:
  • Microsoft Active Directory Service Interfaces 1.0
  • Microsoft Active Directory Service Interfaces 2.0
  • Microsoft Active Directory Service Interfaces 2.5
Palabras clave: 
kbinfo KB232282
Renuncia a responsabilidad de los contenidos de la KB sobre productos a los que ya no se ofrece asistencia alguna
El presente artículo se escribió para productos para los que Microsoft ya no ofrece soporte técnico. Por tanto, el presente artículo se ofrece "tal cual" y no será actualizado.

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com