SECURITY_ATTRIBUTES

オブジェクトに関するセキュリティデスクリプタ(セキュリティ記述子)が格納されます。この構造体を指定することで、オブジェクトのハンドルが継承可能であるかどうかを指定します。

typedef struct _SECURITY_ATTRIBUTES {
    DWORD  nLength;               // 構造体サイズ
    LPVOID lpSecurityDescriptor;  // セキュリティデスクリプタ
    BOOL   bInheritHandle;        // 継承フラグ
} SECURITY_ATTRIBUTES, *PSECURITY_ATTRIBUTES, *LPSECURITY_ATTRIBUTES;

メンバ

nLength

SECURITY_ATTRIBUTES 構造体のサイズをバイト単位で指定します。 12 を指定します。

lpSecurityDescriptor

初期化されたセキュリティデスクリプタのアドレスを指定します。 0 (NULL) を指定すると、呼び出しプロセスのデフォルトのセキュリティデスクリプタが指定されます。

Windows 95/98/Me: lpSecurityDescriptor メンバは無視されます。

bInheritHandle

新しいプロセスが作成される時に、オブジェクトのハンドルが継承されるようにするかどうかを指定します。このメンバに 1 (TRUE) を指定すると、ハンドルが継承されます。 0 (FALSE) を指定すると、ハンドルは継承されません。

対応情報

Windows 95 以降 / Windows NT 3.1 以降

変数との対応

HSP 変数 メンバ
メンバ名 オフセット サイズ
sa.0 nLength ( = 12 ) 0 4
sa.1 lpSecurityDescriptor 4 4
sa.2 bInheritHandle 8 4