3

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();

なぜこれが起こっているのかわかりません。どんな助けでも大歓迎です。

4

1 に答える 1

2

HRESULT: 0x80210006ですWIA_ERROR_BUSY

WIA API エラー コード ページから:

WIA_ERROR_BUSY        The WIA device is busy.

Communicating with a WIA Device in Multiple Threads or Applicationsによると、別の何かがデバイスにアクセスしているようです。

スレッドが現在デバイスをロックしている (そのデバイスとアクティブに通信している) 場合、別のスレッドがデバイスとアクティブに通信するメソッドを呼び出そうとすると、メソッドはWIA_ERROR_BUSYエラーを返します。

于 2013-04-02T19:17:44.410 に答える