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

IContinueCallback

COM
IIDb722bcca-4e68-101b-a2bc-00aa00404770継承元IUnknown自前メソッド開始 vtbl3

公式ドキュメント

中断可能な処理が、継続すべきかどうかをオブジェクトに定期的に問い合わせるための汎用的なコールバック機構を提供します。

メソッド 2

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

vtbl 3 HRESULT FContinue()

汎用的な操作を継続すべきかどうかを示します。

戻り値

このメソッドは次の値を返すことがあります。

戻り値 説明
S_OK
操作を継続します。
S_FALSE
できるだけ早く操作を取り消します。
vtbl 4 HRESULT FContinuePrinting(INT nCntPrinted, INT nCurPage, LPWSTR pwszPrintStatus)

時間のかかる印刷操作を継続すべきかどうかを示します。

nCntPrintedINTinオブジェクトが FContinuePrinting の呼び出しを受け取った時点で印刷済みのページの総数。
nCurPageINTinオブジェクトが FContinuePrinting の呼び出しを受け取った時点で印刷中のページのページ番号。
pwszPrintStatusLPWSTRin印刷ジョブの現在の状態に関するメッセージへのポインター。印刷対象のオブジェクトは、このメッセージをユーザーに表示する場合としない場合があります。このパラメーターは NULL にすることができます。

戻り値

このメソッドは標準の戻り値 E_UNEXPECTED のほか、次の値を返すことがあります。

戻り値 説明
S_OK
印刷操作を継続します。
S_FALSE
できるだけ早く印刷操作を取り消します。

解説(Remarks)

IPrint::Print の実装は、印刷処理の間、このメソッドを定期的な間隔で呼び出します。IPrint の実装は、少なくとも各ページの印刷後にコールバックすべきです。これにより、クライアントは必要に応じてユーザーに有用な視覚的フィードバックを表示できます。IPrint::Print は、同じ nCntPrintednCurPage の値で複数回コールバックすることがあります。これは、印刷中のページが複雑で、ページの途中でユーザーに取り消しの機会を与えるのが適切な場合に役立つことがあります。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

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

#define global IID_IContinueCallback "{B722BCCA-4E68-101B-A2BC-00AA00404770}"
#usecom global IContinueCallback IID_IContinueCallback "{}"
#comfunc global IContinueCallback_FContinue          3
#comfunc global IContinueCallback_FContinuePrinting  4 int,int,wstr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。