<Return[A]><Top>

AddAce

Declare Function Api_AddAce& Lib "advapi32" Alias "AddAce" (pAcl As ACL, ByVal dwAceRevision&, ByVal dwStartingAceIndex&, pAceList As Any, ByVal nAceListLength&)

Declare Function AddAce Lib "advapi32" Alias "AddAce" (pAcl As ACL, ByVal dwAceRevision As Long, ByVal dwStartingAceIndex As Long, pAceList As Any, ByVal nAceListLength As Long) As Long

指定されたACL(アクセス制御リスト)に、1 つまたは複数の ACE(アクセス制御エントリ)を追加する。
ACE は、access-control entry の略称。ACL は、access-control list の略称。

パラメータ

pAcl
    1 つの ACL構造体へのポインタを指定します。この関数は、ACE をこの ACL に追加する。
dwAceRevision
    変更する ACL のリビジョンレベルを指定する。この値は、ACL_REVISION_DS でなければならない。
dwStartingAceIndex
    ACL 内の ACE リストで、新しい ACE を追加する位置を指定する。値 0 を指定すると、リストの先頭に ACE を挿入する。

    値 MAXDWORD を指定すると、リストの終わりに ACE を追加する。
pAceList
    指定された ACL へ追加する、1 つまたは複数の ACE からなる 1 つのリストへのポインタを指定する。このリスト内の ACE は、連続した場

    所に格納されていなければならない。
nAceListLength
    pAceList パラメータが指す入力バッファのサイズをバイト単位で指定する。

戻り値
    関数が成功すると、0 以外の値が返る。
    関数が失敗すると、0 が返る。拡張エラー情報を取得するには、 関数を使う。

解説
    アプリケーションは AddAce 関数を使って ACL を操作する際に、関数 FindFirstFreeAce と GetAce を頻繁に利用することになる。
    また、GetAclInformation 関数が取得する 構造体は、ACL のサイズと、その中の ACE の数を保持している。