Win32 API 日本語リファレンス
ホームSystem.SettingsManagementInfrastructure › ISettingsIdentity

ISettingsIdentity

COM
IID9f7d7bb6-20b3-11da-81a5-0030f1642e3c継承元IUnknown自前メソッド開始 vtbl3

メソッド 4

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT GetAttribute(void* Reserved, LPWSTR Name, LPWSTR* Value)
Reservedvoid*in予約済みであり、NULL を指定する。
NameLPWSTRin取得する属性の名前を指定する。
ValueLPWSTR*out指定した属性の値を受け取るポインタである。
vtbl 4 HRESULT SetAttribute(void* Reserved, LPWSTR Name, LPWSTR Value)
Reservedvoid*in予約済みであり、NULL を指定する。
NameLPWSTRin設定する属性の名前を指定する。
ValueLPWSTRin属性に設定する値を指定する。
vtbl 5 HRESULT GetFlags(DWORD* Flags)
FlagsDWORD*outこのアイデンティティに設定されているフラグを受け取るポインタである。
vtbl 6 HRESULT SetFlags(DWORD Flags)
FlagsDWORDinこのアイデンティティに設定するフラグを指定する。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_ISettingsIdentity "{9F7D7BB6-20B3-11DA-81A5-0030F1642E3C}"
#usecom global ISettingsIdentity IID_ISettingsIdentity "{}"
#comfunc global ISettingsIdentity_GetAttribute  3 sptr,wstr,var
#comfunc global ISettingsIdentity_SetAttribute  4 sptr,wstr,wstr
#comfunc global ISettingsIdentity_GetFlags      5 var
#comfunc global ISettingsIdentity_SetFlags      6 int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。