LookupSecurityDescriptorPartsW

自己相対セキュリティ記述子からセキュリティ情報を取得する。(Unicode)

LookupSecurityDescriptorPartsW ppOwner, ppGroup, pcCountOfAccessEntries, ppListOfAccessEntries, pcCountOfAuditEntries, ppListOfAuditEntries, pSD

ppOwner : [var] TRUSTEE 構造体へのポインタを受け取る変数へのポインタ。関数は pSD セキュリティ記述子の所有者セキュリティ識別子 (SID) に関連付けられた名前を検索し、TRUSTEE 構造体の ptstrName メンバに名前へのポインタを返す。関数は TrusteeForm メンバを TRUSTEE_IS_NAME に設定する。
ppGroup : [var] TRUSTEE 構造体へのポインタを受け取る変数へのポインタ。関数はセキュリティ記述子のプライマリグループ SID に関連付けられた名前を検索し、TRUSTEE 構造体の ptstrName メンバに名前へのポインタを返す。関数は TrusteeForm メンバを TRUSTEE_IS_NAME に設定する。
pcCountOfAccessEntries : [var] pListOfAccessEntries 配列で返される EXPLICIT_ACCESS 構造体の数を受け取る ULONG へのポインタ。このパラメータは pListOfAccessEntries パラメータも NULL の場合にのみ NULL にできる。
ppListOfAccessEntries : [var] セキュリティ記述子の随意アクセス制御リスト (DACL) 内のアクセス制御エントリ (ACE) を記述する EXPLICIT_ACCESS 構造体の配列へのポインタを受け取る変数へのポインタ。これらの EXPLICIT_ACCESS 構造体内の TRUSTEE 構造体は TRUSTEE_IS_NAME 形式を使用する。EXPLICIT_ACCESS 構造体の配列がアクセス制御リスト (ACL) 内の ACE をどのように記述するかについては、GetExplicitEntriesFromAcl 関数を参照。このパラメータが NULL の場合、cCountOfAccessEntries パラメータも NULL でなければならない。
pcCountOfAuditEntries : [var] pListOfAuditEntries 配列で返される EXPLICIT_ACCESS 構造体の数を受け取る ULONG へのポインタ。このパラメータは pListOfAuditEntries パラメータも NULL の場合にのみ NULL にできる。
ppListOfAuditEntries : [var] セキュリティ記述子のシステムアクセス制御リスト (SACL) 内の ACE を記述する EXPLICIT_ACCESS 構造体の配列へのポインタを受け取る変数へのポインタ。これらの EXPLICIT_ACCESS 構造体内の TRUSTEE 構造体は TRUSTEE_IS_NAME 形式を使用する。このパラメータが NULL の場合、cCountOfAuditEntries パラメータも NULL でなければならない。
pSD : [int] 関数がセキュリティ情報を取得する既存の自己相対セキュリティ記述子へのポインタ。

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

解説

自己相対セキュリティ記述子からセキュリティ情報を取得する。(Unicode)

[戻り値]
関数が成功した場合、関数は ERROR_SUCCESS を返す。関数が失敗した場合、WinError.h で定義されている 0
以外のエラーコードを返す。

[備考]
LookupSecurityDescriptorParts
関数はセキュリティ記述子の所有者とプライマリグループの名前を取得する。この関数はまた、セキュリティ記述子の DACL 内の ACE と
SACL 内の監査制御エントリの記述も返す。pSD 以外のパラメータは、情報が不要な場合 NULL でよい。DACL
に関する情報が不要な場合、pListOfAccessEntries と cCountOfAuditEntries の両方を NULL
にする必要がある。SACL に関する情報が不要な場合、pListOfAuditEntries と cCountOfAuditEntries
の両方を NULL にする必要がある。同様に、DACL または SACL の情報が必要な場合、対応する両方のパラメータが NULL
であってはならない。pOwner、pGroup、pListOfAccessEntries、または pListOfAuditEntries
パラメータによって返されたバッファの使用が終わったら、LocalFree 関数を呼び出して解放する。
> [!NOTE] > aclapi.h ヘッダーは LookupSecurityDescriptorParts
をエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI 版または Unicode
版を自動的に選択する。詳細は [Conventions for Function
Prototypes](/windows/win32/intl/conventions-for-function-prototypes)
を参照。

情報

プラグイン / モジュール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