IShellNameSpace
COMIDispatch (デュアル)✅ IDispatch を実装(デュアルインターフェース)。HSP では
comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。メソッド 21
vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。
| vtbl | メソッド |
|---|---|
| 20 | HRESULT get_EnumOptions(INT* pgrfEnumFlags) |
| 21 | HRESULT put_EnumOptions(INT lVal) |
| 22 | HRESULT get_SelectedItem(IDispatch** pItem) |
| 23 | HRESULT put_SelectedItem(IDispatch* pItem) |
| 24 | HRESULT get_Root(VARIANT* pvar) |
| 25 | HRESULT put_Root(VARIANT var) |
| 26 | HRESULT get_Depth(INT* piDepth) |
| 27 | HRESULT put_Depth(INT iDepth) |
| 28 | HRESULT get_Mode(DWORD* puMode) |
| 29 | HRESULT put_Mode(DWORD uMode) |
| 30 | HRESULT get_Flags(DWORD* pdwFlags) |
| 31 | HRESULT put_Flags(DWORD dwFlags) |
| 32 | HRESULT put_TVFlags(DWORD dwFlags) |
| 33 | HRESULT get_TVFlags(DWORD* dwFlags) |
| 34 | HRESULT get_Columns(LPWSTR* bstrColumns) |
| 35 | HRESULT put_Columns(LPWSTR bstrColumns) |
| 36 | HRESULT get_CountViewTypes(INT* piTypes) |
| 37 | HRESULT SetViewType(INT iType) |
| 38 | HRESULT SelectedItems(IDispatch** ppid) |
| 39 | HRESULT Expand(VARIANT var, INT iDepth) |
| 40 | HRESULT UnselectAll() |