警告
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入门。
下图显示了在单个设备堆栈中,与 UMDF 功能驱动程序相关的操作流程。
注意 应用程序启动的所有 I/O 都通过内核模式进行路由,如 UMDF 体系结构 部分的图中所示,即使上图未显示这种情况。
仅当 UMDF 驱动程序需要与读取请求关联的文件的相关信息时,UMDF 驱动程序才会调用 IWDFIoRequest::GetCreateParameters 方法。 仅当 UMDF 驱动程序需要有关读取请求的详细信息时,UMDF 驱动程序才会调用 IWDFIoRequest::GetReadParameters 方法。
如果不需要指定读取作中传输的字节数,UMDF 驱动程序可以调用 IWDFIoRequest::Complete 方法,而不是 IWDFIoRequest::CompleteWithInformation 方法。 UMDF 驱动程序调用 Complete 或 CompleteWithInformation 来指示读取作已完成;然后,应用程序可以访问读取数据。