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 utilizado 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 tipos de objeto o los nombres asociados a pObjectName. 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

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.

Comentarios

La función GetInheritanceSource asigna memoria para los nombres devueltos en la estructura 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 en que otro subproceso cambia el 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 neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado aclapi.h
Library Advapi32.lib
Archivo DLL Advapi32.dll

Consulte también

FreeInheritedFromArray