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

View

COMIDispatch (デュアル)
IDispatch を実装(デュアルインターフェース)。HSP では comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。
IID6efc2da2-b38c-457e-9abb-ed2d189b8c38継承元IDispatch呼び出し名前(IDispatch) または vtbl自前メソッド開始 vtbl7

メソッド 42

vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。

vtbl 7 HRESULT get_ActiveScopeNode(Node** Node)
NodeNode**outビューで現在選択されているスコープノードを表す Node オブジェクトを受け取るポインタである。
vtbl 8 HRESULT put_ActiveScopeNode(Node* Node)
NodeNode*inビューでアクティブにするスコープノードを表す Node オブジェクトへのポインタである。
vtbl 9 HRESULT get_Selection(Nodes** Nodes)
NodesNodes**out結果ペインで現在選択されているノードの集合を表す Nodes オブジェクトを受け取るポインタである。
vtbl 10 HRESULT get_ListItems(Nodes** Nodes)
NodesNodes**out結果ペインに表示されている全項目の集合を表す Nodes オブジェクトを受け取るポインタである。
vtbl 11 HRESULT SnapinScopeObject(VARIANT ScopeNode, IDispatch** ScopeNodeObject)
ScopeNodeVARIANTin対象のスコープノードを指定する VARIANT である。
ScopeNodeObjectIDispatch**out指定スコープノードに対応するスナップインの自動化オブジェクト (IDispatch) を受け取るポインタである。
vtbl 12 HRESULT SnapinSelectionObject(IDispatch** SelectionObject)
SelectionObjectIDispatch**out現在の選択に対応するスナップインの自動化オブジェクト (IDispatch) を受け取るポインタである。
vtbl 13 HRESULT Is(View* View, VARIANT_BOOL* TheSame)
ViewView*in比較対象の View オブジェクトへのポインタである。
TheSameVARIANT_BOOL*out両ビューが同一であるかどうかを受け取る VARIANT_BOOL へのポインタである。
vtbl 14 HRESULT get_Document(Document** Document)
DocumentDocument**outこのビューを所有する Document オブジェクトを受け取るポインタである。
vtbl 15 HRESULT SelectAll()
vtbl 16 HRESULT Select(Node* Node)
NodeNode*in結果ペインで選択状態にするノードを表す Node オブジェクトへのポインタである。
vtbl 17 HRESULT Deselect(Node* Node)
NodeNode*in結果ペインで選択を解除するノードを表す Node オブジェクトへのポインタである。
vtbl 18 HRESULT IsSelected(Node* Node, BOOL* IsSelected)
NodeNode*in選択状態を調べる対象の Node オブジェクトへのポインタである。
IsSelectedBOOL*out指定ノードが選択されているかどうかを受け取る BOOL へのポインタである。
vtbl 19 HRESULT DisplayScopeNodePropertySheet(VARIANT ScopeNode)
ScopeNodeVARIANTinプロパティシートを表示する対象のスコープノードを指定する VARIANT である。
vtbl 20 HRESULT DisplaySelectionPropertySheet()
vtbl 21 HRESULT CopyScopeNode(VARIANT ScopeNode)
ScopeNodeVARIANTinコピーする対象のスコープノードを指定する VARIANT である。
vtbl 22 HRESULT CopySelection()
vtbl 23 HRESULT DeleteScopeNode(VARIANT ScopeNode)
ScopeNodeVARIANTin削除する対象のスコープノードを指定する VARIANT である。
vtbl 24 HRESULT DeleteSelection()
vtbl 25 HRESULT RenameScopeNode(LPWSTR NewName, VARIANT ScopeNode)
NewNameLPWSTRinスコープノードに設定する新しい名前を指定する。
ScopeNodeVARIANTin名前を変更する対象のスコープノードを指定する VARIANT である。
vtbl 26 HRESULT RenameSelectedItem(LPWSTR NewName)
NewNameLPWSTRin結果ペインで選択中の項目に設定する新しい名前を指定する。
vtbl 27 HRESULT get_ScopeNodeContextMenu(VARIANT ScopeNode, ContextMenu** ContextMenu)
ScopeNodeVARIANTinコンテキストメニューを取得する対象のスコープノードを指定する VARIANT である。
ContextMenuContextMenu**out指定スコープノードのコンテキストメニューを表す ContextMenu オブジェクトを受け取るポインタである。
vtbl 28 HRESULT get_SelectionContextMenu(ContextMenu** ContextMenu)
ContextMenuContextMenu**out現在の選択に対応するコンテキストメニューを表す ContextMenu オブジェクトを受け取るポインタである。
vtbl 29 HRESULT RefreshScopeNode(VARIANT ScopeNode)
ScopeNodeVARIANTin再表示 (更新) する対象のスコープノードを指定する VARIANT である。
vtbl 30 HRESULT RefreshSelection()
vtbl 31 HRESULT ExecuteSelectionMenuItem(LPWSTR MenuItemPath)
MenuItemPathLPWSTRin現在の選択に対して実行するメニュー項目のパスを指定する。
vtbl 32 HRESULT ExecuteScopeNodeMenuItem(LPWSTR MenuItemPath, VARIANT ScopeNode)
MenuItemPathLPWSTRin実行するメニュー項目のパスを指定する。
ScopeNodeVARIANTinメニュー項目を実行する対象のスコープノードを指定する VARIANT である。
vtbl 33 HRESULT ExecuteShellCommand(LPWSTR Command, LPWSTR Directory, LPWSTR Parameters, LPWSTR WindowState)
CommandLPWSTRin実行するコマンド (実行ファイルパス) を指定する。
DirectoryLPWSTRinコマンドの作業ディレクトリを指定する。
ParametersLPWSTRinコマンドに渡すパラメータを指定する。
WindowStateLPWSTRin起動するウィンドウの状態 (最大化・最小化・通常など) を指定する。
vtbl 34 HRESULT get_Frame(Frame** Frame)
FrameFrame**outこのビューを含むメインウィンドウを表す Frame オブジェクトを受け取るポインタである。
vtbl 35 HRESULT Close()
vtbl 36 HRESULT get_ScopeTreeVisible(BOOL* Visible)
VisibleBOOL*outスコープツリー (左ペイン) が表示されているかどうかを受け取る BOOL へのポインタである。
vtbl 37 HRESULT put_ScopeTreeVisible(BOOL Visible)
VisibleBOOLinスコープツリーを表示するか (TRUE) 非表示にするか (FALSE) を指定する。
vtbl 38 HRESULT Back()
vtbl 39 HRESULT Forward()
vtbl 40 HRESULT put_StatusBarText(LPWSTR StatusBarText)
StatusBarTextLPWSTRinステータスバーに表示するテキストを指定する。
vtbl 41 HRESULT get_Memento(LPWSTR* Memento)
MementoLPWSTR*outビューの状態を再現するためのメメント (永続化文字列) を受け取るポインタである。
vtbl 42 HRESULT ViewMemento(LPWSTR Memento)
MementoLPWSTRinビューに適用する保存済みのメメント (状態文字列) を指定する。
vtbl 43 HRESULT get_Columns(Columns** Columns)
ColumnsColumns**out結果ペインの列の集合を表す Columns オブジェクトを受け取るポインタである。
vtbl 44 HRESULT get_CellContents(Node* Node, INT Column, LPWSTR* CellContents)
NodeNode*inセル内容を取得する対象の項目を表す Node オブジェクトへのポインタである。
ColumnINTin値を取得する列の 0 から始まるインデックスを指定する。
CellContentsLPWSTR*out指定セルのテキスト内容を受け取る文字列へのポインタである。
vtbl 45 HRESULT ExportList(LPWSTR File, _ExportListOptions exportoptions)
FileLPWSTRinリスト内容のエクスポート先ファイルのパスを指定する。
exportoptions_ExportListOptionsinエクスポート方法を制御する _ExportListOptions 値を指定する。
vtbl 46 HRESULT get_ListViewMode(_ListViewMode* Mode)
Mode_ListViewMode*out結果ペインの表示モード (一覧・詳細・アイコンなど) を受け取る _ListViewMode へのポインタである。
vtbl 47 HRESULT put_ListViewMode(_ListViewMode mode)
mode_ListViewModein結果ペインに設定する表示モードを示す _ListViewMode 値を指定する。
vtbl 48 HRESULT get_ControlObject(IDispatch** Control)
ControlIDispatch**out結果ペインに表示されているコントロールの自動化オブジェクト (IDispatch) を受け取るポインタである。

HSP用 COM定義

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

出力引数:
#define global IID_View "{6EFC2DA2-B38C-457E-9ABB-ED2D189B8C38}"
#usecom global View IID_View "{}"
#comfunc global View_get_ActiveScopeNode            7 sptr
#comfunc global View_put_ActiveScopeNode            8 sptr
#comfunc global View_get_Selection                  9 sptr
#comfunc global View_get_ListItems                  10 sptr
#comfunc global View_SnapinScopeObject              11 int,sptr
#comfunc global View_SnapinSelectionObject          12 sptr
#comfunc global View_Is                             13 sptr,var
#comfunc global View_get_Document                   14 sptr
#comfunc global View_SelectAll                      15
#comfunc global View_Select                         16 sptr
#comfunc global View_Deselect                       17 sptr
#comfunc global View_IsSelected                     18 sptr,var
#comfunc global View_DisplayScopeNodePropertySheet  19 int
#comfunc global View_DisplaySelectionPropertySheet  20
#comfunc global View_CopyScopeNode                  21 int
#comfunc global View_CopySelection                  22
#comfunc global View_DeleteScopeNode                23 int
#comfunc global View_DeleteSelection                24
#comfunc global View_RenameScopeNode                25 wstr,int
#comfunc global View_RenameSelectedItem             26 wstr
#comfunc global View_get_ScopeNodeContextMenu       27 int,sptr
#comfunc global View_get_SelectionContextMenu       28 sptr
#comfunc global View_RefreshScopeNode               29 int
#comfunc global View_RefreshSelection               30
#comfunc global View_ExecuteSelectionMenuItem       31 wstr
#comfunc global View_ExecuteScopeNodeMenuItem       32 wstr,int
#comfunc global View_ExecuteShellCommand            33 wstr,wstr,wstr,wstr
#comfunc global View_get_Frame                      34 sptr
#comfunc global View_Close                          35
#comfunc global View_get_ScopeTreeVisible           36 var
#comfunc global View_put_ScopeTreeVisible           37 int
#comfunc global View_Back                           38
#comfunc global View_Forward                        39
#comfunc global View_put_StatusBarText              40 wstr
#comfunc global View_get_Memento                    41 var
#comfunc global View_ViewMemento                    42 wstr
#comfunc global View_get_Columns                    43 sptr
#comfunc global View_get_CellContents               44 sptr,int,var
#comfunc global View_ExportList                     45 wstr,int
#comfunc global View_get_ListViewMode               46 var
#comfunc global View_put_ListViewMode               47 int
#comfunc global View_get_ControlObject              48 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。