LsaOpenPolicy

ローカルまたはリモートシステムの Policy オブジェクトへのハンドルを開く。

LsaOpenPolicy SystemName, ObjectAttributes, DesiredAccess, PolicyHandle

SystemName : [var] 対象システムの名前を含む LSA_UNICODE_STRING 構造体へのポインタ。名前の形式は "ComputerName" または "\\ComputerName" でよい。このパラメータが NULL の場合、関数はローカルシステムの Policy オブジェクトを開く。
ObjectAttributes : [var] 接続属性を指定する LSA_OBJECT_ATTRIBUTES 構造体へのポインタ。構造体のメンバは使用されない。NULL またはゼロに初期化すること。
DesiredAccess : [int] 要求されるアクセス権を指定する ACCESS_MASK。対象システムの DACL が呼び出し元に要求されたアクセスを許可しない場合、関数は失敗する。必要なアクセス権を判断するには、ポリシーハンドルで使用する LSA 関数のドキュメントを参照。
PolicyHandle : [intptr] Policy オブジェクトへのハンドルを受け取る LSA_HANDLE 変数へのポインタ。このハンドルが不要になったら、LsaClose 関数に渡して閉じる。

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

解説

ローカルまたはリモートシステムの Policy オブジェクトへのハンドルを開く。

[戻り値]
関数が成功した場合、関数は STATUS_SUCCESS を返す。関数が失敗した場合、NTSTATUS コードを返す。詳細は「LSA
Policy Function Return Values」を参照。LsaNtStatusToWinError 関数を使用して
NTSTATUS コードを Windows エラーコードに変換できる。

[備考]
ローカルまたはリモートシステムのローカルセキュリティポリシーを管理するには、LsaOpenPolicy 関数を呼び出してそのシステムの
LSA サブシステムとのセッションを確立する必要がある。LsaOpenPolicy は対象システムの LSA に接続し、そのシステムの
Policy オブジェクトへのハンドルを返す。このハンドルを後続の LSA
関数呼び出しで使用して、対象システムのローカルセキュリティポリシー情報を管理できる。この関数の呼び出しを実演する例については「Opening
a Policy Object Handle」を参照。

情報

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