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 |