IWiaTransferCallback::TransferCallback メソッド (wia_lh.h)
IWiaTransferCallback::TransferCallback メソッドは、画像処理フィルターによって実装されます。 これは、 IWiaTransfer::D ownload またはプレビュー コンポーネントの IWiaPreview ::GetNewPreview を呼び出したアプリケーションの結果として、WIA サービスによって呼び出されます。
構文
HRESULT TransferCallback(
[in] LONG lFlags,
[in] WiaTransferParams *pWiaTransferParams
);
パラメーター
[in] lFlags
現在使用されていません。 ゼロに設定してください。
[in] pWiaTransferParams
WiaTransferParams 構造体へのポインターを指定します。
戻り値
成功した場合はS_OKを返し、それ以外の場合は標準の COM エラー値を返します。
注釈
IWiaTransferCallback::TransferCallback メソッドのイメージ処理フィルターの実装は、WIA ミニ ドライバーがクライアントから宛先ストリームを要求するとき、およびミニ ドライバーが進行状況メッセージをアプリケーションに送り返すときに、イメージの取得中に呼び出されます。
画像処理フィルターの IWiaTransferCallback::TransferCallback メソッドは、アプリケーション コールバックの IWiaTransferCallback::TransferCallback メソッドに委任する必要があります。 多くの場合、画像処理フィルターの IWiaTransferCallback::TransferCallback 実装では 、ulBytesWrittenToCurrentStream および場合によっては WiaTransferParams 構造体の lPercentComplete 値も変更する必要があります。 アプリケーションが提供するストリームにデータを書き込む前に、画像処理フィルターが Write メソッドの呼び出し間でイメージ データをバッファーする必要がある場合は、ulBytesWrittenToCurrentStream を変更する必要があります。 これは、たとえば、実行されている場合は、デスクウイングや回転の場合に必要になります。 回転やデスクウイングが必要ない場合は、フィルターはデータのバンドで機能することが望ましいです。 ただし、このパラメーターは転送時間の合計に対する割合を示しているため、lPercentComplete は必ずしも変更する必要はありません。 たとえば、このメンバーは、アプリケーションの進行状況バーで使用できます。 画像処理フィルターでは、 構造体の lMessage メンバーを変更しないでください。 IWiaTransferCallback::TransferCallback は、バッファリングを実行しても受信したメッセージを "飲み込む" こともしないでください。 ulBytesWrittenToCurrentStream メンバーを変更する必要があります。
このメソッドは、 IWiaPreview::UpdatePreview 中にプレビュー コンポーネントによって呼び出されません。
要件
要件 | 値 |
---|---|
対象プラットフォーム | デスクトップ |
Header | wia_lh.h (Wia_lh.h を含む) |