共用方式為


WIA 元件

WIA 包含數層,可交錯使用者與硬體。 使用者會與 WIA 應用程式互動,此應用程式可以有選擇性的使用者介面。 此應用程式會與 WIA 服務通訊,此服務會將使用者的要求傳送至minidriver。 minidriver 會與相關的核心模式總線驅動程序通訊。 最後,總線驅動程式會與硬體通訊。 下圖說明組成 WIA 介面的軟體元件。

說明組成 wia 介面之軟體元件的圖表。

映像處理應用程式

映像處理應用程式不會直接與迷你驅動程序通訊,但會透過 WIA 應用程式程式設計介面與 WIA 服務通訊, (WIA API) ,以存取影像並從 WIA 裝置取得資料。 這些應用程式可以使用系統提供的使用者介面 (UI) 或裝置製造商提供的介面。 UI 用來選取要傳送的專案,以及設定相關的屬性。 請注意,它是應用程式,而不是驅動程式,會在 UI 關閉之後傳輸選取的專案。 如需映像處理應用程式的 WIA API 詳細資訊,請參閱 Microsoft Windows SDK 檔。

WIA 服務

WIA 服務是系統提供的元件,可與映像應用程式和 WIA 迷你驅動程式通訊。 WIA 服務是下表所列的 COM 介面集合,所有介面都會在 Microsoft Windows SDK 檔中說明。 WIA 服務會在與應用程式不同的進程中執行,但在與 WIA 迷你驅動程式相同的進程中執行。 應用程式會將裝置要求導向 WIA 服務。 WIA 服務接著會透過 WIA 裝置驅動程式介面將這些要求導向至適當的迷你驅動程式, (WIA DDI) 。 下表列出 WIA 應用程式可以實作的 API。

WIA API Description
IEnumWIA_DEV_CAPS 列舉 WIA 硬體裝置的功能。 裝置功能包括裝置支援的命令和事件。
IEnumWIA_DEV_INFO 列舉 WIA 硬體裝置及其屬性。 裝置資訊屬性描述 WIA 硬體裝置的安裝和設定。
IEnumWIA_FORMAT_INFO 列舉裝置的格式和媒體類型資訊。
IEnumWiaItem 列舉樹狀結構目前資料夾中的 IWiaItem 物件。 WIA 執行時間系統會將每個 WIA 硬體裝置以 IWiaItem 物件的階層式樹狀結構來代表應用程式。
IWiaDataCallback 在將數據從 WIA 硬體裝置傳輸到應用程式期間提供應用程式回呼機制。
IWiaDataTransfer 支援共用記憶體視窗,以將資料從裝置物件傳輸到應用程式,並消除封送處理期間不必要的數據複本。
IWiaDevMgr 應用程式用來建立和管理映像擷取裝置。 它們也會使用它來註冊來接收裝置事件。
IWiaEventCallback 應用程式用來接收 WIA 硬體裝置事件的通知。
IWiaItem 可讓應用程式查詢裝置的功能。 IWiaItem 也提供數據傳輸介面和專案屬性的存取權。 此外,此介面提供方法來讓應用程式控制裝置。
IWiaPropertyStorage 提供 IWiaItem 物件屬性相關信息的存取權。

WIA 驅動程式服務連結庫

WIA 驅動程式服務連結庫是系統提供的元件,可為 WIA 迷你驅動程式提供協助程式函式。 minidriver 可以呼叫協助程式函式來執行工作,例如:

或者,迷你驅動程式可以自行執行這類工作。 藉由使用協助程式函式,您可以減少開發時間和 WIA 迷你驅動程式的大小,但仍有開發個別解決方案的彈性。

WIA 公用程式連結庫

WIA 公用程式連結庫包含一組偵錯函式, (wiauDbgXxx) 、一般公用程式協助程式函式的集合,以及三個類別:CWiauDbgFn 類別、CWiauFormatConverter 類別和 CWiauPropertyList 類別。

WIA 迷你驅動程式

WIA 迷你驅動程式 是廠商提供的使用者模式元件,會將 WIA 屬性變更和命令導向至映像裝置。 minidriver 會實作 WIA DDI,WIA 服務會呼叫 WIA 服務來與迷你驅動程序通訊。

WIA 迷你驅動程式提供裝置特定的使用者模式介面給核心模式的仍為映像驅動程式,其會透過驅動程式驅動映像裝置,例如 USB 驅動程式。 minidriver 會呼叫 CreateFileReadFile、WriteFileDeviceIoControl Microsoft Win32 函式來與核心模式驅動程序通訊, (如 Microsoft Windows SDK 檔) 中所述。

映像處理應用程式無法直接呼叫 WIA 迷你驅動程式。 只有 WIA 服務可以直接呼叫驅動程式。

核心 I/O 驅動程式

核心模式仍為映像驅動程式的系統提供或 IHV 提供的元件,其會封裝數據以傳遞至仍在映像裝置,以及從仍在映像裝置傳輸。 核心模式仍為映像驅動程式專用。

Microsoft 提供 Microsoft Windows 驅動程式模型 (WDM) 型核心模式的 USB、SCSI、序列和 IEEE 1394 總線的映射驅動程式。 如需這些驅動程式的詳細資訊,請參閱 存取仍然映像裝置的核心模式驅動程式

只有當核心模式的映像裝置與 Microsoft 提供的核心模式 I/O 驅動程式不相容時,廠商才必須提供核心模式的映像驅動程式。

您可以從驅動程式擷取版本資訊。 WIA_DIP_WIA_VERSION 屬性包含 WIA 版本,而 WIA_DIP_DRIVER_VERSION 屬性則包含驅動程式 DLL 版本。 WIA 服務會建立和維護這些屬性;載入驅動程式時,WIA 服務會自動新增它們。 Windows Me 不包含這些屬性。