ConvertStringSecurityDescriptorToSecurityDescriptorW

文字列形式のセキュリティ記述子を、有効で機能的なセキュリティ記述子に変換する。(Unicode)

ConvertStringSecurityDescriptorToSecurityDescriptorW StringSecurityDescriptor, StringSDRevision, SecurityDescriptor, SecurityDescriptorSize

StringSecurityDescriptor : [wstr] 変換する文字列形式のセキュリティ記述子を含む null 終端文字列へのポインタ。
StringSDRevision : [int] StringSecurityDescriptor 文字列のリビジョンレベルを指定する。現在、この値は SDDL_REVISION_1 でなければならない。
SecurityDescriptor : [var] 変換されたセキュリティ記述子へのポインタを受け取る変数へのポインタ。返されるセキュリティ記述子は自己相対形式である。返されたバッファを解放するには LocalFree 関数を呼び出す。セキュリティ記述子を絶対セキュリティ記述子に変換するには MakeAbsoluteSD 関数を使用する。
SecurityDescriptorSize : [var] 変換されたセキュリティ記述子のサイズ(バイト単位)を受け取る変数へのポインタ。このパラメータは NULL にできる。

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

解説

文字列形式のセキュリティ記述子を、有効で機能的なセキュリティ記述子に変換する。(Unicode)

[戻り値]
関数が成功した場合、戻り値は 0 以外となる。関数が失敗した場合、戻り値は 0 となる。拡張エラー情報を取得するには
GetLastError を呼び出す。GetLastError は以下のエラーコードのいずれかを返す場合がある。
(以下省略)

[備考]
ace_type が ACCESS_ALLOWED_OBJECT_ACE_TYPE で、object_guid と
inherit_object_guid のどちらにも GUID
が指定されていない場合、ConvertStringSecurityDescriptorToSecurityDescriptor は
ace_type を ACCESS_ALLOWED_ACE_TYPE
に変換する。ace_type、object_guid、inherit_object_guid フィールドの詳細は「Ace
Strings」を参照のこと。
> [!NOTE] > sddl.h
ヘッダは、ConvertStringSecurityDescriptorToSecurityDescriptor を 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