#define global IID_IADsSecurityDescriptor "{B8C787CA-9BDD-11D0-852C-00C04FD8D503}"
#usecom global IADsSecurityDescriptor IID_IADsSecurityDescriptor "{}"
#comfunc global IADsSecurityDescriptor_get_Revision 7 var
#comfunc global IADsSecurityDescriptor_put_Revision 8 int
#comfunc global IADsSecurityDescriptor_get_Control 9 var
#comfunc global IADsSecurityDescriptor_put_Control 10 int
#comfunc global IADsSecurityDescriptor_get_Owner 11 var
#comfunc global IADsSecurityDescriptor_put_Owner 12 wstr
#comfunc global IADsSecurityDescriptor_get_OwnerDefaulted 13 var
#comfunc global IADsSecurityDescriptor_put_OwnerDefaulted 14 int
#comfunc global IADsSecurityDescriptor_get_Group 15 var
#comfunc global IADsSecurityDescriptor_put_Group 16 wstr
#comfunc global IADsSecurityDescriptor_get_GroupDefaulted 17 var
#comfunc global IADsSecurityDescriptor_put_GroupDefaulted 18 int
#comfunc global IADsSecurityDescriptor_get_DiscretionaryAcl 19 sptr
#comfunc global IADsSecurityDescriptor_put_DiscretionaryAcl 20 sptr
#comfunc global IADsSecurityDescriptor_get_DaclDefaulted 21 var
#comfunc global IADsSecurityDescriptor_put_DaclDefaulted 22 int
#comfunc global IADsSecurityDescriptor_get_SystemAcl 23 sptr
#comfunc global IADsSecurityDescriptor_put_SystemAcl 24 sptr
#comfunc global IADsSecurityDescriptor_get_SaclDefaulted 25 var
#comfunc global IADsSecurityDescriptor_put_SaclDefaulted 26 int
#comfunc global IADsSecurityDescriptor_CopySecurityDescriptor 27 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。#define global IID_IADsSecurityDescriptor "{B8C787CA-9BDD-11D0-852C-00C04FD8D503}"
#usecom global IADsSecurityDescriptor IID_IADsSecurityDescriptor "{}"
#comfunc global IADsSecurityDescriptor_get_Revision 7 sptr
#comfunc global IADsSecurityDescriptor_put_Revision 8 int
#comfunc global IADsSecurityDescriptor_get_Control 9 sptr
#comfunc global IADsSecurityDescriptor_put_Control 10 int
#comfunc global IADsSecurityDescriptor_get_Owner 11 sptr
#comfunc global IADsSecurityDescriptor_put_Owner 12 wstr
#comfunc global IADsSecurityDescriptor_get_OwnerDefaulted 13 sptr
#comfunc global IADsSecurityDescriptor_put_OwnerDefaulted 14 int
#comfunc global IADsSecurityDescriptor_get_Group 15 sptr
#comfunc global IADsSecurityDescriptor_put_Group 16 wstr
#comfunc global IADsSecurityDescriptor_get_GroupDefaulted 17 sptr
#comfunc global IADsSecurityDescriptor_put_GroupDefaulted 18 int
#comfunc global IADsSecurityDescriptor_get_DiscretionaryAcl 19 sptr
#comfunc global IADsSecurityDescriptor_put_DiscretionaryAcl 20 sptr
#comfunc global IADsSecurityDescriptor_get_DaclDefaulted 21 sptr
#comfunc global IADsSecurityDescriptor_put_DaclDefaulted 22 int
#comfunc global IADsSecurityDescriptor_get_SystemAcl 23 sptr
#comfunc global IADsSecurityDescriptor_put_SystemAcl 24 sptr
#comfunc global IADsSecurityDescriptor_get_SaclDefaulted 25 sptr
#comfunc global IADsSecurityDescriptor_put_SaclDefaulted 26 int
#comfunc global IADsSecurityDescriptor_CopySecurityDescriptor 27 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。