尝试使用wpf连接到扫描仪时出现错误代码

时间:2013-04-02 19:11:16

标签: c# wia

我正在使用WIA连接到扫描仪。我枚举设备信息,然后尝试连接到设备。我一直得到例外。

HRESULT的异常:0x80210006

我在WPF窗口后面的代码中调用代码。

        DeviceManager manager = new DeviceManagerClass();
        DeviceInfo device = null;
        foreach (DeviceInfo deviceInfo  in manager.DeviceInfos)
        {
            var ID = deviceInfo.DeviceID;
            var props = deviceInfo.Properties ;
            foreach (Property property in props)
            {
                var name = property.Name;
                var descr = property.get_Value() as string;
            }
            var type = deviceInfo.Type;
            if (type == WiaDeviceType.ScannerDeviceType)
                device = deviceInfo;
        }
        if (device != null)
              device.Connect();

我无法弄清楚为什么会这样。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

HRESULT: 0x80210006WIA_ERROR_BUSY

来自WIA API Error Codes page

WIA_ERROR_BUSY        The WIA device is busy.

根据Communicating with a WIA Device in Multiple Threads or Applications,看起来其他东西可能正在访问该设备:

  

如果线程当前锁定了设备(它正在与该设备进行通信),而另一个线程尝试调用与设备主动通信的方法,则该方法会返回WIA_ERROR_BUSY错误。