Funzione GetInheritanceSourceA (aclapi.h)
Questa versione di questa funzione non è supportata. La versione a caratteri wide di questa funzione , GetInheritanceSourceW, è supportata.
Sintassi
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
);
Parametri
[in] pObjectName
Puntatore al nome dell'oggetto che utilizza l'ACL da controllare.
[in] ObjectType
Tipo di oggetto indicato da pObjectName. I valori possibili sono SE_FILE_OBJECT, SE_REGISTRY_KEY, SE_DS_OBJECT e SE_DS_OBJECT_ALL.
[in] SecurityInfo
Tipo di ACL utilizzato con l'oggetto . I valori possibili sono DACL_SECURITY_INFORMATION o SACL_SECURITY_INFORMATION.
[in] Container
TRUE se l'oggetto è un oggetto contenitore o FALSE se l'oggetto è un oggetto foglia. Si noti che l'unico oggetto foglia è SE_FILE_OBJECT.
[in, optional] pObjectClassGuids
Elenco facoltativo di GUID che identificano i tipi di oggetto o i nomi associati a pObjectName. Può trattarsi di NULL se il gestore oggetti supporta solo una classe oggetto o non ha un GUID associato alla classe oggetto.
[in] GuidCount
Numero di GUID a cui punta pObjectClassGuids.
[in] pAcl
Elenco di controllo di accesso per l'oggetto .
[in, optional] pfnArray
Riservato. Impostare questo parametro su NULL.
[in] pGenericMapping
Mapping dei diritti generici a diritti specifici per l'oggetto.
[out] pInheritArray
Puntatore a una matrice di strutture INHERITED_FROM compilate dalla funzione GetInheritanceSource con le informazioni di ereditarietà. Il chiamante deve allocare memoria sufficiente per una voce per ogni ACE nell'elenco di controllo di accesso.
Valore restituito
Se la funzione ha esito positivo, la funzione restituisce ERROR_SUCCESS.
Se la funzione ha esito negativo, restituisce un codice di errore diverso da zero definito in WinError.h.
Commenti
La funzione GetInheritanceSource alloca memoria per i nomi restituiti nella struttura INHERITED_FROM . Al termine dell'utilizzo di questa memoria, il programma chiamante deve liberarlo chiamando FreeInheritedFromArray. Si noti che il chiamante deve fornire memoria per la matrice stessa. Se il chiamante ha allocato la memoria, il chiamante deve liberare tale memoria dopo aver chiamato FreeInheritedFromArray.
Questa funzione non gestisce le race condition. Se il thread chiama questa funzione nel momento approssimativo in cui un altro thread modifica il descrittore di sicurezza dell'oggetto, questa funzione potrebbe non riuscire.
Nota
L'intestazione aclapi.h definisce GetInheritanceSource come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | aclapi.h |
Libreria | Advapi32.lib |
DLL | Advapi32.dll |