Compartir a través de


Función GetInheritanceSourceA (aclapi.h)

Esta versión de esta función no se admite. Se admite la versión de caracteres anchos de esta función, GetInheritanceSourceW.

Sintaxis

DWORD GetInheritanceSourceA(
  [in]           LPSTR                 pObjectName,
  [in]           SE_OBJECT_TYPE        ObjectType,
  [in]           SECURITY_INFORMATION  SecurityInfo,
  [in]           BOOL                  Container,
  [in, optional] GUID                  **pObjectClassGuids,
  [in]           DWORD                 GuidCount,
  [in]           PACL                  pAcl,
  [in, optional] PFN_OBJECT_MGR_FUNCTS pfnArray,
  [in]           PGENERIC_MAPPING      pGenericMapping,
  [out]          PINHERITED_FROMA      pInheritArray
);

Parámetros

[in] pObjectName

Puntero al nombre del objeto que usa la ACL que se va a comprobar.

[in] ObjectType

Tipo de objeto indicado por pObjectName. Los valores posibles son SE_FILE_OBJECT, SE_REGISTRY_KEY, SE_DS_OBJECT y SE_DS_OBJECT_ALL.

[in] SecurityInfo

Tipo de ACL que se usa con el objeto . Los valores posibles son DACL_SECURITY_INFORMATION o SACL_SECURITY_INFORMATION.

[in] Container

TRUE si el objeto es un objeto contenedor o FALSE si el objeto es un objeto hoja. Tenga en cuenta que el único objeto hoja es SE_FILE_OBJECT.

[in, optional] pObjectClassGuids

Lista opcional de GUID que identifican los nombres o tipos de objeto asociados a pObjectName. Esto puede ser NULL si el administrador de objetos solo admite una clase de objeto o no tiene ningún GUID asociado a la clase de objeto.

[in] GuidCount

Número de GUID a los que apunta pObjectClassGuids.

[in] pAcl

La ACL del objeto.

[in, optional] pfnArray

Reservado. Establezca este parámetro en null.

[in] pGenericMapping

Asignación de derechos genéricos a derechos específicos para el objeto.

[out] pInheritArray

Puntero a una matriz de estructuras de INHERITED_FROM que la función GetInheritanceSource rellena con la información de herencia. El autor de la llamada debe asignar suficiente memoria para una entrada para cada ACE en la ACL.

Valor devuelto

Si la función se ejecuta correctamente, la función devuelve ERROR_SUCCESS.

Si se produce un error en la función, devuelve un código de error distinto de cero definido en WinError.h.

Observaciones

La función GetInheritanceSource asigna memoria para los nombres devueltos en la estructura de INHERITED_FROM. Cuando la función haya terminado de usar esta memoria, el programa de llamada debe liberarlo llamando a FreeInheritedFromArray. Tenga en cuenta que el autor de la llamada debe proporcionar memoria para la propia matriz. Si el autor de la llamada asignó la memoria, el autor de la llamada debe liberar esa memoria después de llamar a FreeInheritedFromArray.

Esta función no controla las condiciones de carrera. Si el subproceso llama a esta función en el momento aproximado de que otro subproceso cambia la descriptor de seguridad del objeto, esta función podría producir un error.

Nota

El encabezado aclapi.h define GetInheritanceSource como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.

Requisitos

Requisito Valor
cliente mínimo admitido Windows XP [solo aplicaciones de escritorio]
servidor mínimo admitido Windows Server 2003 [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de aclapi.h
biblioteca de Advapi32.lib
DLL de Advapi32.dll

Consulte también

FreeInheritedFromArray