IWiaImageFilter::InitializeFilter method

The IWiaImageFilter::InitializeFilter method stores the references to pWiaItem2 and pWiaTransferCallback parameters passed into the method.


HRESULT InitializeFilter(
  IWiaItem2            *pWiaItem2,
  IWiaTransferCallback *pWiaTransferCallback



Points to the IWiaItem2 item that the image acquisition was initiated for by the application. In the case of IWiaTransfer::Download, it is the WIA item from which we obtained the IWiaTransfer interface, and in the case of the Preview component, it is the item that we pass into the IWiaPreview::GetNewPreview method.


Points to a IWiaTransferCallback interface. The IWiaTransferCallback interface is the application's callback interface, which is passed to IWiaTransfer::Download and IWiaPreview::GetNewPreview.

Return value

Returns S_OK on success, or a standard COM error code on failure.


This method is called by the COM proxy object (described in the Microsoft Windows SDK documentation) before the download call reaches the WIA service. This happens in two cases: when an application calls IWiaTransfer::Download method and when an application calls the IWiaPreview::GetNewPreview method.

All that IWiaImageFilter::InitializeFilter is required to do is to store the references to pWiaItem2 and pWiaTransferCallback that are passed into it. These interface pointers should be stored as member variables in this method and AddRef should be called for each interface pointer. These two interface pointers are needed in the filter's implementation of IWiaTransferCallback::TransferCallback and IWiaTransferCallback::GetNextStream methods.

The IWiaTransferCallback and IWiaPreview interfaces are described in the Windows SDK documentation.

This method cannot be invoked directly by the application.

The IWiaItem2, IWiaPreview and IWiaTransfer interfaces are described in the Windows SDK documentation.


Minimum supported client Available in Windows Vista and later versions of the Windows operating systems.
Target Platform Desktop
Header wia_lh.h (include Wia_lh.h)

See also


IWiaTransferCallback Interface