次の方法で共有


GetInheritanceSourceA 関数 (aclapi.h)

この関数のこのバージョンはサポートされていません。 この関数のワイド文字バージョン GetInheritanceSourceW がサポートされています。

構文

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
);

パラメーター

[in] pObjectName

チェック対象の ACL を使用するオブジェクトの名前へのポインター。

[in] ObjectType

pObjectName で示されるオブジェクトの型。 使用可能な値は、SE_FILE_OBJECT、SE_REGISTRY_KEY、SE_DS_OBJECT、およびSE_DS_OBJECT_ALLです。

[in] SecurityInfo

オブジェクトで使用される ACL の種類。 使用可能な値は、DACL_SECURITY_INFORMATIONまたはSACL_SECURITY_INFORMATIONです。

[in] Container

オブジェクトがコンテナー オブジェクトの場合は TRUE、オブジェクトがリーフ オブジェクトの場合は FALSE。 リーフ オブジェクトはSE_FILE_OBJECTのみであることに注意してください。

[in, optional] pObjectClassGuids

pObjectName に関連付けられているオブジェクトの種類または名前を識別する GUID の省略可能な一覧。 オブジェクト マネージャーが 1 つのオブジェクト クラスのみをサポートしている場合、またはオブジェクト クラスに関連付けられている GUID がない場合は 、NULL になる可能性があります。

[in] GuidCount

pObjectClassGuids が指す GUID の数。

[in] pAcl

オブジェクトの ACL。

[in, optional] pfnArray

予約済み。 このパラメーターを NULL に設定 します

[in] pGenericMapping

オブジェクトの特定の権限に対する汎用権限のマッピング。

[out] pInheritArray

GetInheritanceSource 関数が継承情報を入力するINHERITED_FROM構造体の配列へのポインター。 呼び出し元は、ACL 内の各 ACE のエントリに十分なメモリを割り当てる必要があります。

戻り値

関数が成功した場合、関数は ERROR_SUCCESSを返します。

関数が失敗した場合、WinError.h で定義されている 0 以外のエラー コードが返されます。

注釈

GetInheritanceSource 関数は、INHERITED_FROM構造体で返される名前にメモリを割り当てます。 関数がこのメモリの使用を完了したら、呼び出し元のプログラムが FreeInheritedFromArray を呼び出して解放する必要があります。 呼び出し元は、配列自体のメモリを提供する必要があることに注意してください。 呼び出し元がメモリを割り当てた場合、呼び出し元は FreeInheritedFromArray を呼び出した後、そのメモリを解放する必要があります。

この関数は競合状態を処理しません。 別のスレッドがオブジェクトの セキュリティ記述子を変更したおおよその時点でスレッドがこの関数を呼び出すと、この関数が失敗する可能性があります。

注意

aclapi.h ヘッダーは、GetInheritanceSource をエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー aclapi.h
Library Advapi32.lib
[DLL] Advapi32.dll

こちらもご覧ください

FreeInheritedFromArray