Vista 应用程序和旧版驱动程序的映射

重要

本文包含适用于已过时 Windows 操作系统的信息。

本部分介绍 Windows Vista 应用程序需要使用旧版驱动程序时使用的映射。 下表描述了 WIA 兼容性层如何将旧传输消息和数据流映射到 Windows Vista 传输消息和数据流。

回调传输

下表显示了旧驱动程序的回调传输消息到发送到 Windows Vista 应用程序的消息的映射。

旧版驱动程序传输消息 兼容性层转换后 (Windows Vista 应用程序消息)
IT_MSG_DATA IStream::Seek、IStream::Write 和 WIA_TRANSFER_MSG_STATUS所有 ORed 在一起。
IT_MSG_STATUS WIA_TRANSFER_MSG_STATUS
IT_MSG_DATA_HEADER 已忽略。 此消息仅由服务发送,而不是由驱动程序发送,并且永远不会在这种类型的传输期间发送。
IT_MSG_NEW_PAGE 已忽略。 在此类型的传输过程中,绝不应收到此消息。 旧版驱动程序仅在多页传输期间发送此文件,TYMED_CALLBACK或未向 Windows Vista 应用程序公开的TYMED_MULTIPAGE_CALLBACK。 兼容性层仅对TYMED_MULTIPAGE_FILE执行多页传输。 对于TYMED_FILE传输,应用程序将始终一次接收一页。
IT_MSG_TERMINATION 此消息仅由服务发送,而不是由驱动程序发送。 兼容性层会改为发送WIA_TRANSFER_MSG_END_OF_STREAM和WIA_TRANSFER_MSG_END_OF_TRANSFER。
IT_MSG_FILE_PREVIEW_DATA 已忽略。 IStream 传输模型不支持带外数据。
IT_MSG_FILE_PREVIEW_DATA_HEADER 已忽略。 IStream 传输模型不支持带外数据。

文件传输

下表显示了旧驱动程序的文件传输消息到发送到 Windows Vista 应用程序的消息的映射。

旧版驱动程序传输消息 兼容性层转换后 (Windows Vista 应用程序消息)
IT_MSG_DATA 已忽略。 不应在文件传输期间发送此消息。
IT_MSG_STATUS WIA_TRANSFER_MSG_STATUS
IT_MSG_DATA_HEADER 已忽略。 此消息仅由服务 (不由驱动程序) 发送,并且永远不会在这种类型的传输期间发送。
IT_MSG_NEW_PAGE 已忽略。 在此类型的传输过程中,绝不应收到此消息。 旧版驱动程序仅在多页传输期间发送此文件,TYMED_CALLBACK或未向 Windows Vista 应用程序公开的TYMED_MULTIPAGE_CALLBACK。 但是,兼容性层仅对TYMED_MULTIPAGE_FILE执行多页传输。 对于TYMED_FILE传输,驱动程序将始终一次接收一页。
IT_MSG_TERMINATION 此消息仅由服务 (不由驱动程序) 发送。 兼容性层将改为发送WIA_TRANSFER_MSG_END_OF_STREAM和WIA_TRANSFER_MSG_END_OF_TRANSFER。
IT_MSG_FILE_PREVIEW_DATA 已忽略。 新的传输模型不支持带外数据。
IT_MSG_FILE_PREVIEW_DATA_HEADER 已忽略。 新的传输模型不支持带外数据。

有关旧传输消息的详细信息,请参阅 IWiaMiniDrvCallBack 接口。

有关 TYMED 常量的详细信息,请参阅 了解 TYMED