Вывод метакода на печать в Windows 7

Вывод метакода на печать в Windows 7

Я пытаюсь перенести старую систему на базе Windows 3.11 на Windows 7. Большая часть этой системы переносится относительно легко; существует множество вариантов запуска старых приложений под Windows 7.

Однако критически важным элементом является создание файлов, которые являются выходными данными задания печати на принтере Xerox, управляемом метакодом. Метакод является важным языком команд принтера, таким как PCL5 или Postscript, например, набором элементов управления, которые отправляются на принтер, чтобы сообщить ему, как форматировать вывод и т. д. До Windows 2000, Xerox, по-видимому, предлагал принтеры, такие как 6110, с опциями драйверов PCL, Postscript или Metacode.

Драйвер принтера Metacode, по-видимому, не зависит от принтера, как и текстовый файл принтера или PDF, созданный как задание «печати». Я предполагаю, что именно поэтому он был выбран 15-20 лет назад в качестве выходного формата для этой системы. Само приложение представляет собой старую программу обработки текста с некоторыми настройками, которая в остальном хорошо работает непосредственно под Win7 32-бит; однако вывод должен быть получен из действия типа «печать».

Этот выводдолженбыть похожим на тот, который отправляется на принтер, поддерживающий Metacode, поскольку использование этих выходных файлов осуществляется мэйнфреймом, которому необходимо распознавать этот формат.

Я искал способ генерировать вывод Metacode в Windows 7, и пока ничего не нашел. Я мог бы, например, запустить оригинальное приложение под exDOS или DOSbox, но ни один из них не позволяет мне загрузить 16-битный драйвер принтера Metacode. И я не могу найти ни одного драйвера принтера Metacode, который бы работал под Windows 7.

Я прошел через практику контактов с Xerox, тестируя различные виртуальные системы, которые работают так, как будто они основаны на DOS или Win3.x, и потратил значительное время на исследования. До сих пор я даже не нашел документ, в котором перечислены команды Metacode,похоже на эту ссылку PCL.

Я сделалнайти ссылки, подобные этой:

Язык описания страниц, использовавшийся в ранних высокоскоростных принтерах Xerox. Используемый как для текста, так и для графики, Metacode может обращаться ко всем точкам на странице. В отличие от этого, Line Condition Data Stream (LCDS) — это текстовый формат Xerox, а команды Dynamic Job Descriptor Entry (DJDE) — это текстовые команды, которые могут быть включены в LCDS и Metacode.

Поэтому я ищу предложения о том, как производить этот вывод под Windows 7. Это не рекомендация для продуктов как таковых, поскольку я ищу метод, процесс, продукт и/или процедуру. С другой стороны, если естьявляетсядрайвер Metacode, работающий под Windows 7. Я был бы рад, если бы меня поправили, поскольку это значительно упростило бы решение.

Пожалуйста, дайте мне знать, если вы хотите, чтобы в пост были добавлены какие-либо подробности для лучшего объяснения проблемы.

решение1

Существуют программные продукты, которые могут эмулировать принтер Metacode и преобразовывать его таким образом, чтобы он мог печатать на более современном принтере.

Быстрый поиск дал следующие результаты:

HostServe
Печать RSA MIS
Эмуляция принтера XCHANGE

Существует также программное обеспечение для преобразования Metacode, например, в PostScript:
Xerox Transformation — конвертация DJDE, LCDS, Metacode.


Крайне маловероятно, что можно найти драйвер принтера, который создает файл метакода. Кроме того, 16-битная программа из Windows 3.11 вообще не может работать на 64-битной Windows.

Чтобы избежать этих проблем с переносимостью, лучшим решением может стать создание 16-разрядной виртуальной машины и установка на нее Windows 3.11 и 16-разрядного драйвера принтера метакода.

Почти все продукты виртуализации позволяют создать виртуальный последовательный порт на гостевой системе, который фактически выводит данные в файл на хосте.

Этот порт принтера, используемый только внутри гостя, возможно, может быть использован для создания "принтера метакода", который вам нужен. Сгенерированный файл метакода на хосте затем может быть отправлен для обработки на мэйнфрейм, как это фактически и есть ваша процедура.

Если у вас все еще есть старый компьютер с Windows 3.11, вы можете виртуализировать физический компьютер в виртуальный (P2V), виртуализировав его жесткий диск и затем прикрепив виртуальный диск к 16-битной виртуальной машине. Таким образом, старая установка Windows 3.11 навсегда сохранится в своей виртуальной машине.

Виртуальная машина Windows 3.11 не нуждается в подключении к сети. Файл метакода, записанный в виртуальный порт, находится на хосте, и именно хост будет подключаться к сети. Виртуальная машина Windows 3.11 может быть подключена к виртуальному сетевому адаптеру только для хоста, который предоставляется вашим продуктом виртуализации.

решение2

У Crawford есть серия продуктов X-to-Metacode:http://www.crawfordtech.com/products/conversions-and-transforms

Если ваше приложение может генерировать файл Postscript, то вы можете использоватьПреобразование PS в метакод. У этой же компании есть аналогичные продукты для других форматов ввода.

Связанный контент