Метод IWiaTransferCallback::TransferCallback (wia_lh.h)
Метод IWiaTransferCallback::TransferCallback реализуется фильтром обработки изображений. Он вызывается службой WIA в результате вызова приложения IWiaTransfer::D ownload или IWiaPreview::GetNewPreview компонента предварительной версии.
Синтаксис
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 и, возможно, также значения lPercentComplete в структуре WiaTransferParams. ulBytesWrittenToCurrentStream необходимо изменить, если фильтр обработки изображений должен буферировать данные изображений между вызовами метода Write перед записью данных в предоставленный приложением поток. Это, например, потребуется при выполнении рабочего стола и /или ротации, если выполняется. Если не требуется смена или смена рабочего стола, фильтр должен работать с диапазонами данных. Однако не обязательно изменять lPercentComplete , так как этот параметр указывает процент от общего времени передачи. Этот элемент может, например, использоваться индикатором выполнения в приложении. Обратите внимание, что фильтр обработки изображений не должен изменять элемент lMessage структуры. IWiaTransferCallback::TransferCallback также не должен "проглатывать" получаемые сообщения, даже если выполняет буферизацию, а должен изменять член ulBytesWrittenToCurrentStream .
Этот метод не вызывается компонентом предварительной версии во время IWiaPreview::UpdatePreview.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | wia_lh.h (включая Wia_lh.h) |