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

IMAPITable

COM
継承元IUnknown自前メソッド開始 vtbl3

メソッド 23

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

vtbl 3 HRESULT GetLastError(HRESULT hResult, DWORD ulFlags, MAPIERROR** lppMAPIError)
hResultHRESULTin詳細なエラー情報を取得する対象の HRESULT エラーコードを指定する。
ulFlagsDWORDin文字列の形式 (ANSI/Unicode) を制御するフラグを指定する。
lppMAPIErrorMAPIERROR**inoutエラーの詳細を格納した MAPIERROR 構造体を受け取るポインタである。
vtbl 4 HRESULT Advise(DWORD ulEventMask, IMAPIAdviseSink* lpAdviseSink, DWORD* lpulConnection)
ulEventMaskDWORDin通知を受け取るイベントの種類を示すマスクを指定する。
lpAdviseSinkIMAPIAdviseSink*in通知を受け取るアドバイズシンク IMAPIAdviseSink を指定する。
lpulConnectionDWORD*inout確立された通知接続を識別する接続番号を受け取る変数へのポインタである。
vtbl 5 HRESULT Unadvise(DWORD ulConnection)
ulConnectionDWORDin解除する通知接続を識別する接続番号を指定する。
vtbl 6 HRESULT GetStatus(DWORD* lpulTableStatus, DWORD* lpulTableType)
lpulTableStatusDWORD*inoutテーブルの現在のステータスを受け取る変数へのポインタである。
lpulTableTypeDWORD*inoutテーブルの種別を受け取る変数へのポインタである。
vtbl 7 HRESULT SetColumns(SPropTagArray* lpPropTagArray, DWORD ulFlags)
lpPropTagArraySPropTagArray*inoutテーブルの列として設定するプロパティのタグ配列 SPropTagArray へのポインタである。
ulFlagsDWORDin列設定の動作を制御するフラグを指定する。
vtbl 8 HRESULT QueryColumns(DWORD ulFlags, SPropTagArray** lpPropTagArray)
ulFlagsDWORDin取得する列の集合 (現在の列か全列か) を制御するフラグを指定する。
lpPropTagArraySPropTagArray**inoutテーブルの列を構成するプロパティのタグ配列 SPropTagArray を受け取るポインタである。
vtbl 9 HRESULT GetRowCount(DWORD ulFlags, DWORD* lpulCount)
ulFlagsDWORDin行数取得の動作を制御するフラグを指定する。
lpulCountDWORD*inoutテーブルの行数を受け取る変数へのポインタである。
vtbl 10 HRESULT SeekRow(DWORD bkOrigin, INT lRowCount, INT* lplRowsSought)
bkOriginDWORDinシークの起点となるブックマークを指定する。
lRowCountINTin起点から移動する行数を指定する。負の値は逆方向への移動を表す。
lplRowsSoughtINT*inout実際に移動できた行数を受け取る変数へのポインタである。
vtbl 11 HRESULT SeekRowApprox(DWORD ulNumerator, DWORD ulDenominator)
ulNumeratorDWORDin目的位置を割合で示す分数の分子を指定する。
ulDenominatorDWORDin目的位置を割合で示す分数の分母を指定する。
vtbl 12 HRESULT QueryPosition(DWORD* lpulRow, DWORD* lpulNumerator, DWORD* lpulDenominator)
lpulRowDWORD*inout現在のカーソル行の位置を受け取る変数へのポインタである。
lpulNumeratorDWORD*inout現在位置を割合で示す分数の分子を受け取る変数へのポインタである。
lpulDenominatorDWORD*inout現在位置を割合で示す分数の分母を受け取る変数へのポインタである。
vtbl 13 HRESULT FindRow(SRestriction* lpRestriction, DWORD bkOrigin, DWORD ulFlags)
lpRestrictionSRestriction*inout検索条件を示す SRestriction へのポインタである。
bkOriginDWORDin検索を開始する起点となるブックマークを指定する。
ulFlagsDWORDin検索方向などを制御するフラグを指定する。
vtbl 14 HRESULT Restrict(SRestriction* lpRestriction, DWORD ulFlags)
lpRestrictionSRestriction*inoutテーブルに適用する絞り込み条件を示す SRestriction へのポインタである。制限を解除するには NULL を指定する。
ulFlagsDWORDin絞り込みの動作を制御するフラグを指定する。
vtbl 15 HRESULT CreateBookmark(DWORD* lpbkPosition)
lpbkPositionDWORD*inout現在位置に作成されたブックマークを識別する値を受け取る変数へのポインタである。
vtbl 16 HRESULT FreeBookmark(DWORD bkPosition)
bkPositionDWORDin解放するブックマークを識別する値を指定する。
vtbl 17 HRESULT SortTable(SSortOrderSet* lpSortCriteria, DWORD ulFlags)
lpSortCriteriaSSortOrderSet*inoutテーブルに適用するソート条件を示す SSortOrderSet へのポインタである。
ulFlagsDWORDinソートの動作を制御するフラグを指定する。
vtbl 18 HRESULT QuerySortOrder(SSortOrderSet** lppSortCriteria)
lppSortCriteriaSSortOrderSet**inoutテーブルに現在適用されているソート条件 SSortOrderSet を受け取るポインタである。
vtbl 19 HRESULT QueryRows(INT lRowCount, DWORD ulFlags, SRowSet** lppRows)
lRowCountINTin取得する最大行数を指定する。
ulFlagsDWORDin行取得の動作を制御するフラグを指定する。
lppRowsSRowSet**inout取得された行の集合 SRowSet を受け取るポインタである。
vtbl 20 HRESULT Abort()
vtbl 21 HRESULT ExpandRow(DWORD cbInstanceKey, BYTE* pbInstanceKey, DWORD ulRowCount, DWORD ulFlags, SRowSet** lppRows, DWORD* lpulMoreRows)
cbInstanceKeyDWORDinpbInstanceKey が指すインスタンスキーのバイト数を指定する。
pbInstanceKeyBYTE*inout展開する見出し行のインスタンスキーを格納したバイト配列へのポインタである。
ulRowCountDWORDin展開時に取得する最大行数を指定する。
ulFlagsDWORDin展開の動作を制御するフラグを指定する。
lppRowsSRowSet**inout展開によって得られた行の集合 SRowSet を受け取るポインタである。
lpulMoreRowsDWORD*inout未取得の残り行数を受け取る変数へのポインタである。
vtbl 22 HRESULT CollapseRow(DWORD cbInstanceKey, BYTE* pbInstanceKey, DWORD ulFlags, DWORD* lpulRowCount)
cbInstanceKeyDWORDinpbInstanceKey が指すインスタンスキーのバイト数を指定する。
pbInstanceKeyBYTE*inout折りたたむ見出し行のインスタンスキーを格納したバイト配列へのポインタである。
ulFlagsDWORDin折りたたみの動作を制御するフラグを指定する。
lpulRowCountDWORD*inout折りたたみによって隠された行数を受け取る変数へのポインタである。
vtbl 23 HRESULT WaitForCompletion(DWORD ulFlags, DWORD ulTimeout, DWORD* lpulTableStatus)
ulFlagsDWORDin待機の動作を制御するフラグを指定する。
ulTimeoutDWORDin待機するタイムアウト時間をミリ秒単位で指定する。
lpulTableStatusDWORD*inout完了後のテーブルステータスを受け取る変数へのポインタである。
vtbl 24 HRESULT GetCollapseState(DWORD ulFlags, DWORD cbInstanceKey, BYTE* lpbInstanceKey, DWORD* lpcbCollapseState, BYTE** lppbCollapseState)
ulFlagsDWORDin状態取得の動作を制御するフラグを指定する。
cbInstanceKeyDWORDinlpbInstanceKey が指すインスタンスキーのバイト数を指定する。
lpbInstanceKeyBYTE*inout状態を取得する基準行のインスタンスキーを格納したバイト配列へのポインタである。
lpcbCollapseStateDWORD*inout返された折りたたみ状態データのバイト数を受け取る変数へのポインタである。
lppbCollapseStateBYTE**inoutテーブルの展開/折りたたみ状態を表すデータを受け取るバイト配列ポインタである。
vtbl 25 HRESULT SetCollapseState(DWORD ulFlags, DWORD cbCollapseState, BYTE* pbCollapseState, DWORD* lpbkLocation)
ulFlagsDWORDin状態復元の動作を制御するフラグを指定する。
cbCollapseStateDWORDinpbCollapseState が指す状態データのバイト数を指定する。
pbCollapseStateBYTE*inout復元する展開/折りたたみ状態を表すデータを格納したバイト配列へのポインタである。
lpbkLocationDWORD*inout復元後のカーソル位置を示すブックマークを受け取る変数へのポインタである。

HSP用 COM定義

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

出力引数:
#define global IID_IMAPITable "{}"
#usecom global IMAPITable IID_IMAPITable "{}"
#comfunc global IMAPITable_GetLastError       3 int,int,var
#comfunc global IMAPITable_Advise             4 int,sptr,var
#comfunc global IMAPITable_Unadvise           5 int
#comfunc global IMAPITable_GetStatus          6 var,var
#comfunc global IMAPITable_SetColumns         7 var,int
#comfunc global IMAPITable_QueryColumns       8 int,var
#comfunc global IMAPITable_GetRowCount        9 int,var
#comfunc global IMAPITable_SeekRow            10 int,int,var
#comfunc global IMAPITable_SeekRowApprox      11 int,int
#comfunc global IMAPITable_QueryPosition      12 var,var,var
#comfunc global IMAPITable_FindRow            13 var,int,int
#comfunc global IMAPITable_Restrict           14 var,int
#comfunc global IMAPITable_CreateBookmark     15 var
#comfunc global IMAPITable_FreeBookmark       16 int
#comfunc global IMAPITable_SortTable          17 var,int
#comfunc global IMAPITable_QuerySortOrder     18 var
#comfunc global IMAPITable_QueryRows          19 int,int,var
#comfunc global IMAPITable_Abort              20
#comfunc global IMAPITable_ExpandRow          21 int,var,int,int,var,var
#comfunc global IMAPITable_CollapseRow        22 int,var,int,var
#comfunc global IMAPITable_WaitForCompletion  23 int,int,var
#comfunc global IMAPITable_GetCollapseState   24 int,int,var,var,var
#comfunc global IMAPITable_SetCollapseState   25 int,int,var,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。