我正在研究 Windows WIA 架构,并了解 Windows 扫描应用程序如何与不同的服务调用一起工作,以与作为 Svchost.dll 中 STI COM 的一部分运行的 WIA 扫描仪服务一起工作。
任何 Wia 应用程序都会加载 Sti.dll COM 存根来与 Wia 服务进行通信。
这些都是有道理的,除非我引入 UWP 应用,它不会加载任何 STI.dll,而是加载名为 Windows.Devices.Scanners.dll 的东西。现在按照这Windows.Devices.Scanners.dll 内部使用 Wia 架构来完成扫描。
我的问题是,如果 UWP 使用 WIA,那么为什么我没有在 UWP 中看到常见的 Wia 堆栈和 COM 组件。
UWP 应用程序是否与某种特定于操作系统的服务一起工作,这些服务代表 UWP 应用程序委托所有 Wia 本机调用?
答案1
好的。答案是运行时代理,是将所有特定于 OS 的调用委托给 PC 的 Microsoft 进程。
更多信息请阅读这