COMException был не обработан - PullRequest
0 голосов
/ 29 марта 2012

Я использую c# для создания небольшого тестового проекта, который будет сканировать изображение. Вот мой код для этого

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using WIA;
namespace Scanner
{
    public class Scanner
    {
        Device oDevice;
        Item oItem;
        CommonDialogClass dlg;
        public Scanner()
        {

                dlg = new CommonDialogClass();
                oDevice = dlg.ShowSelectDevice(WiaDeviceType.UnspecifiedDeviceType, true, false);


        }
        public void Scann()
        {
            dlg.ShowAcquisitionWizard(oDevice);
        }
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
       // [STAThread]
        static void Main()
        {
           Application.EnableVisualStyles();
           Application.SetCompatibleTextRenderingDefault(false);
           Application.Run(new Form1());
       }
    }
}

 private void button1_Click(object sender, EventArgs e)
        {
            Scanner oScanner = new Scanner();
            oScanner.Scann();
            button1.Text = "Image scanned";
            OpenFileDialog dlg = new OpenFileDialog();
            if (dlg.ShowDialog() == DialogResult.OK)
            {
                pictureBox1.Image = Image.FromFile(dlg.FileName);
            }
        }

Но когда я пытаюсь запустить приложение и нажимаю кнопку, яполучить следующую ошибку в этой строке dlg = new CommonDialogClass();

Creating an instance of the COM component with CLSID {850D1D11-70F3-4BE5-9A11-77AA6B2BB201} from the IClassFactory failed due to the following error: 80070422.

Может кто-нибудь предложить мне, что проблема здесь Спасибо

1 Ответ

0 голосов
/ 29 марта 2012

http://mahaafifi.blogspot.co.uk/2012/03/iclassfactory-failed-due-to-following.html

"перейти к окнам Административные инструменты => services => Служба WIA => включить и запустить его"

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...