LINUX.ORG.RU

Как пробросить LPT в MS-DOS (Virtualbox на Debian)

 , ,


0

0

Цель: печатать на EPSON LX-1050+ из LEXICON 1.4 на MS-DOS в виртуалке Virtualbox. Хост Debian 8.

Есть устройство /dev/lp0.

В настройках виртуалки вписано:

      <LPT>
        <Port slot="0" enabled="true" IOBase="0x378" IRQ="7" path="/dev/lp0"/>
        <Port slot="1" enabled="false" IOBase="0x378" IRQ="7"/>
      </LPT>

После запуска — сообщение:

Parallel#0 could not get exclusive access for parallel port '/dev/lp0'Be sure that no other process or driver accesses this port (VERR_INVALID_PARAMETER).
Parallel device 0 cannot attach to host driver (VERR_INVALID_PARAMETER).


Код ошибки: 
NS_ERROR_FAILURE (0x80004005)
Компонент: 
ConsoleWrap
Интерфейс: 
IConsole {872da645-4a9b-1727-bee2-5585105b9eed}

Можно ли это как-нибудь победить ?

Ответ на: комментарий от Deleted

Врядли это так.

Но вопрос другой. Как дать exclusive access к устройству программе в linux ?

Coyote112358
() автор топика

Мсье знает толк. Не проще ли просто вытянуть тот несчастный .txt файл и напечатать из-под линя? Проблема с кодировкою решается явно легче.

Vsevolod-linuxoid ★★★★★
()

А перенаправить печать из лексикона в файл, потом файл скопируешь под линукс на принтер?

ilovewindows ★★★★★
()
Ответ на: комментарий от ilovewindows

Сначала Лексикон должен отправить свой шрифт на принтер. Копированием файла это достижимо? Если да, то как перенаправить вывод Лексикона в файл?

Coyote112358
() автор топика
Ответ на: комментарий от Coyote112358

В файл ESC-последовательности пишутся для переключения встроенных шрифтов принтера, сам текст, шрифт загружается скорее всего тоже так. Перенаправить в досе > и >>, посмотри в лексионе есть там печать в файл. Что-то так вот навскидку и не вспомню. Сто лет назад делал для доса спулер печати в фоне, а то комп постоянно занимали под печать, из АКАДа точно печатали через файл, а вот как из лексикона убей не помню. Если просто текст пульнуть, он быстрее напечатается за один проход строка, но шрифт улетит, со шрифтом два или три прохода. Зачем тебе шрифт лексикона, старую документацию подделываешь?

ilovewindows ★★★★★
()

Может cupsd держит /dev/lp0 открытым и мониторит принтер?

iliyap ★★★★★
()

А загрузиться в DOS с флешки/CD/дискетки и напечатать оттуда нельзя?

tiinn ★★★★★
()

Может прав доступа к /dev/lp0 не хватает? Установи ему chmod 666 от рута.

curufinwe ★★★★★
()
Ответ на: комментарий от Deleted

Лучше бы рабочий проброс PCI-e устройств в витруальные машины при эмуляции неродных архитектур запилили. У проброса PCI-e to FireWire платы в эмулированный ПомерМак OCHE жырный юзкейс.

LittleKawaiiNeko ★★
()
Ответ на: комментарий от buratino

Только до перезагрузки. Было что-то аналогичное с /dev/ttyS0. Идея такая.

1) Посмотреть, кто владелец/группа у /dev/lp0

2) sudo adduser vbox группа

Или не «vbox». Вообщем юзер VirtualBox-а.

bugs-bunny
()

Если выгрузить модуль lp и прописать в настройках виртуалки вместо lp0 parport0, то она запускается, но при попытке отправить в виртуалке строку на LPT1 появляется сообщение «Not ready writing device LPT1».

Что это значит?

Coyote112358
() автор топика

lexicon

именно он нужен ? Могу поискать lexqview которым мы пару лет назад в универе текстовики на WinXP открывали, под вайном он шикарно работал

Dred ★★★★★
()

Всегда думал, что VBox умеет только COM пробрасывать, но не LPT. По крайней мере, сколько не смотрел в GUI, таких фич там не находил, чтобы LPT пробрасывать. Хотя, может просто невнимательно смотрел.

Infra_HDC ★★★★★
()

Где ты в современном железе видел живой LPT? То шо подают под соусом USB-LPT — совсем не то, оно не умеет и десятую долю того, что умело железное LPT.

beastie ★★★★★
()
Ответ на: комментарий от ilovewindows

старую документацию подделываешь?

чет после этого вопроса ...смешно стало

вспомнил как на первых работах и меня использовали и досихпор исползуют сисадминов-студентов для переделывания старых отчетов(5-10 лет давности) а то проверка придет а там неправильно (н астарые отчеты еще можно ссылаться в расчете новых сумм(поменяв суммы в старых отчетах и расчитывать по ним нужные для заказа суммы срубывая изи бабло),ну и прочие махинации)

дл яэтого и надо искать по всему гороу старые ручки 1 в 1 цвета старые принтеры и старый софт

(особено в голос с самой системы(налоговых и подобных)-где подлинность отчета определяется одинаковостью цвета ручки и шрифта печатного)

lwx51033
()
Ответ на: комментарий от Coyote112358

Если выгрузить модуль lp и прописать в настройках виртуалки вместо lp0 parport0, то она запускается, но при попытке отправить в виртуалке строку на LPT1 появляется сообщение «Not ready writing device LPT1».

с lp в линуксе я не работал,но вот имел много работы с ком(который аналог по сути)

так вот в линуксе с 2.6 версии по 3.5 очень часто ломали ком порт

и на твоем месте яб накатал дистрибутив с древним ядром 2.6 для теста,если не работат-то винду икспи и ниже

lwx51033
()
Ответ на: комментарий от lwx51033

так вот в линуксе с 2.6 версии по 3.5 очень часто ломали ком порт

с подобными твоим сообщениями об ошибках-о не инициализируется то неведомый доступ занят то записывать нельзя...

lwx51033
()

Покажи вывод groups
Имхо, просто не хватает у юзера прав.

pekmop1024 ★★★★★
()
Ответ на: комментарий от Coyote112358

Выковыряй из него шрифты и не извращайся.

anonymous
()
Ответ на: комментарий от beastie

На геймерских матплатах даже этот лпт за каким-то х лепят, с кучей других некро интерфейсов. Разупорись.

anonymous
()
Ответ на: комментарий от beastie

А я увидел, длинная гребёнка подписаная lpt1. Ну точно ты упоротый.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.