Epson Point of Sale Printer - невозможно печатать с помощью С#

У меня есть Epson TM-U220A, я пишу настольное приложение С# для печати квитанции. Но он не может найти принтер.

Принтер печатает странные символы, если я отправляю что-то через блокнот (таким образом, он работает)

У меня есть следующее:

  • POS для .Net v1.12.exe
  • OPOSN1.11.16 (Espon Wrapper для .net)
  • Драйвер Эспона установлен
  • USB-интерфейс к принтеру.

Код:

private void FormLoad(object sender, System.EventArgs e)
        {

            //<<<step1>>>--Start
            //Use a Logical Device Name which has been set on the SetupPOS.
            string strLogicalName = "PosPrinter";
           // string strLogicalName = "ESDPRT001";

            try
            {
                //Create PosExplorer
                PosExplorer posExplorer = new PosExplorer();

                DeviceInfo deviceInfo = null;

                try
                {
                    deviceInfo = posExplorer.GetDevice(DeviceType.PosPrinter, strLogicalName);
                    m_Printer = (PosPrinter)posExplorer.CreateInstance(deviceInfo);
                }
                catch (Exception)
                {
                    ChangeButtonStatus();
                    return;
                }

                //Open the device
                m_Printer.Open();

                //Get the exclusive control right for the opened device.
                //Then the device is disable from other application.
                m_Printer.Claim(1000);

                //Enable the device.
                m_Printer.DeviceEnabled = true;
            }
            catch (PosControlException)
            {
                ChangeButtonStatus();
            }
            //<<<step1>>>--End

        }

Ошибка: имя порта является недопустимым или не может быть подключено к устройству. В сети: m_Printer.Claim(1000);

Настроить


person Amarnauth Persaud    schedule 28.07.2011    source источник
comment
Вы знаете, на какой строке выдается исключение?   -  person ZombieSheep    schedule 28.07.2011
comment
Ошибка: имя порта является недопустимым или не может быть подключено к устройству. В сети: m_Printer.Claim(1000);   -  person Amarnauth Persaud    schedule 29.07.2011
comment
Какой драйвер вы используете для опоса или драйвера Windows?   -  person TutuGeorge    schedule 28.07.2012


Ответы (3)


По моему опыту работы с POS-принтерами Epson, установленный драйвер принтера для Windows не позволяет использовать принтер каким-либо другим способом.

Я думаю, что первое, что вы должны попробовать, это удалить принтер, снова настроить его в SetupPOS и снова попробовать вашу программу.

Удачи!

person Daniel Dreier    schedule 09.08.2011
comment
это работает как есть ... не уверен, почему это могло быть проблемой. - person aggietech; 10.05.2016

Пожалуйста, проверьте файл configuration.xml. Имя порта должно быть таким же, как в xml, а SetupPOS должен быть в последовательном порту.

Для настройки XML перейдите по этой ссылке http://social.msdn.microsoft.com/Forums/en-US/5baad480-f2be-4cc9-94e0-572a3fa4697a/sharing-information-for-posnet-112-epson-tmt88v?forum=posfordotnet

person Sheela K R    schedule 18.11.2013

Вы открыли порты принтера для принтера? Может в этом проблема..

Нам нужно, чтобы следующие порты были открыты и включены для принтера:

от 9100 до 9100 с протоколом, установленным на «Оба» от 81 до 1800 с протоколом, установленным на «оба»

person user2262275    schedule 08.05.2013