共用方式為


以 COM 子集為基礎的 UMDF

警告

UMDF 2 是最新版的 UMDF,並取代 UMDF 1。 所有新的UMDF驅動程式都應該使用UMDF 2撰寫。 未將新功能新增至 UMDF 1,而且較新版本的 Windows 10 上對 UMDF 1 的支援有限。 通用 Windows 驅動程式必須使用 UMDF 2。

封存的 UMDF 1 範例可在 Windows 11 版本 22H2 - 2022 年 5 月驅動程式範例更新中找到

如需詳細資訊,請參閱 開始使用UMDF

架構物件和介面是以元件物件模型 (COM) 為基礎,原因如下:

  • 許多應用程式設計師都熟悉 COM。

  • C++ 是程式設計 COM 應用程式的首選語言。

  • COM 介面可提供函式的邏輯性分組,讓裝置驅動程式介面(DDI)便於理解和導航。

  • 使用 COM 可讓 DDI 擴充和演進,而不需要重新編譯現有的驅動程式 DLL。

  • 許多工具,包括 Microsoft Visual Studio 和作用中範本庫 (ATL),都支援 COM 型應用程式和物件。

架構只使用一小部分 COM;它不相依於整個 COM 基礎結構和運行時間庫。 相反地,架構只會使用查詢介面和參考計數功能。 每個架構介面都衍生自 IUnknown ,因此預設支援 QueryInterfaceAddRefRelease 方法。 AddRefRelease 方法會管理物件存留期。 QueryInterface 方法可讓其他元件判斷驅動程式支援的介面。