取消 Windows XP 中的數據傳輸
重要
本文包含適用於過時 Windows 作業系統的資訊。
在 Microsoft Windows XP 和 Windows Me 中,WIA 應用程式有兩種方式可取消資料傳輸:
從傳輸回呼例程 IWiaDataCallback::BandedDataCallback 傳回S_FALSE。
呼叫 IWiaItemExtras::CancelPendingIO。 我們不建議使用此方法,而且任何內建驅動程式或範例都不會使用它。
WIA 驅動程式也有兩種方式可通知應用程式已取消傳輸:
在 呼叫 IWiaMiniDrvCallBack::MiniDrvCallback 時收到S_FALSE。
使用 WIA_EVENT_CANCEL_IO 事件接收其 IWiaMiniDrv::d rvNotifyPnPEvent 的呼叫。
Windows XP 實作有一個問題,就是兩個通知方法之間沒有連線;也就是說,如果使用者呼叫 IWiaItemExtras::CancelPendingIO ,但驅動程式不支援透過 IWiaMiniDrv::d rvNotifyPnPEvent 來異步取消數據傳輸,應用程式也必須從 IWiaMiniDrvCallBack::MiniDrvCallback 傳回S_FALSE。
Microsoft Windows SDK 檔中會說明 IWiaDataCallback 和 IWiaItemExtras 介面。