GetSecurityDescriptorDacl

指定したセキュリティ記述子内の任意アクセス制御リスト (DACL) へのポインタを取得する。

GetSecurityDescriptorDacl pSecurityDescriptor, lpbDaclPresent, pDacl, lpbDaclDefaulted

pSecurityDescriptor : [int] DACL を含む SECURITY_DESCRIPTOR 構造体へのポインタ。関数はそれへのポインタを取得する。
lpbDaclPresent : [var] 指定したセキュリティ記述子に DACL が存在するかどうかを示す値へのポインタ。lpbDaclPresent が TRUE の場合、セキュリティ記述子は DACL を含み、この関数の残りの出力パラメータは有効な値を受け取る。lpbDaclPresent が FALSE の場合、セキュリティ記述子は DACL を含まず、残りの出力パラメータは有効な値を受け取らない。lpbDaclPresent の値が TRUE であっても pDacl が NULL でないことを意味するわけではない。すなわち、lpbDaclPresent が TRUE で pDacl が NULL のことがあり、これは NULL DACL が有効であることを意味する。NULL DACL は暗黙的にオブジェクトへのすべてのアクセスを許可し、空の DACL とは異なる。空の DACL はオブジェクトへのアクセスを一切許可しない。適切な DACL の作成方法については Creating a DACL を参照。
pDacl : [var] アクセス制御リスト (ACL) へのポインタへのポインタ。DACL が存在する場合、関数は pDacl が指すポインタにセキュリティ記述子の DACL のアドレスを設定する。DACL が存在しない場合、値は格納されない。
lpbDaclDefaulted : [var] セキュリティ記述子に DACL が存在する場合、SECURITY_DESCRIPTOR_CONTROL 構造体の SE_DACL_DEFAULTED フラグの値に設定されるフラグへのポインタ。このフラグが TRUE の場合、DACL は既定の仕組みによって取得されている。FALSE の場合、DACL はユーザーによって明示的に指定されている。

(プラグイン / モジュール : advapi32.dll)

解説

指定したセキュリティ記述子内の任意アクセス制御リスト (DACL) へのポインタを取得する。

[戻り値]
関数が成功した場合はゼロ以外を返す。失敗した場合はゼロを返す。拡張エラー情報を取得するには GetLastError を呼び出す。

情報

プラグイン / モジュールadvapi32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の advapi32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_advapi32_gen2.hs