我写了一个WIA微型驱动器,目前只生成虚拟数据 - 稍后它应该从扫描仪获取数据。
按预期调用MicroEntry()和SetPixelWindow()函数,然后调用Scan(SCAN_FIRST,...)并多次调用Scan(SCAN_NEXT,...)。
然后我收到错误(消息没有特殊含义) - 使用" Windows Live Image Gallery"当使用" Windows传真和扫描"。我使用Windows 7,64位。
我尝试使用Windows Driver Kit中的官方WIA微驱动程序示例。我看不出哪个函数以哪个顺序调用,但我也得到了使用这两个程序的错误信息。
因为微软的官方驱动程序也不起作用,我认为问题不在我的程序中,而是在操作系统的某个地方。
我的问题:
是否有任何已知原因导致这些驱动程序不起作用?
有没有解决办法?
感谢。
答案 0 :(得分:0)
我自己找到了答案:
官方示例微驱动器有一个错误!因为我使用该驱动程序作为我自己的驱动程序,我的驱动程序也有同样的错误。
问题是" Scan()"的最后一个参数。在SCAN_FINISH阶段,函数为NULL,但示例驱动程序将始终将0写入此指针指向的位置。
我想知道为什么微软没有发现这个错误,因为它总会导致驱动程序出现异常!