Програми DOS досі застосовуються у світі бізнесу. Поради щодо того, як змусити їх працювати належним чином на сучасній обчислювальній платформі, поширені в Інтернеті. Ось що для мене спрацювало.
16-бітна програма DOS, яка нам потрібна для роботи з резидентами на 32-бітному сервері Windows 2003, який незабаром буде видалений. До цього часу доля програми відображається на двох 32-бітних клієнтських машинах з основного домену з груповою політикою. Ярлик до файлу .cmd, який запускає програму, розміщується вручну на клієнтах, також на первинному домені. Програма добре працює на Windows 8.1. Якийсь компроміс, щоб бути впевненим, але машини будуть модернізовані до 64-розрядної Windows 8.1, коли програма DOS, яка працює від другого домену, буде звільнена.
Друк з програми представляє найбільшу проблему. Для цієї програми використовуються два різних паралельних принтера, але програма друкується лише на одному порту, і немає можливості змінити цю поведінку. Потрібно роздрукувати чек на лазерному принтері? Його потрібно приєднати до порту LPT1. Потрібно надрукувати дамп даних на матричному принтері? Його також потрібно приєднати до порту LPT1. Двоє людей щодня працюють з цією програмою, тому ми будемо використовувати їх комп’ютери, по одному для кожного принтера. Давайте встановимо перший принтер:
Якщо на комп'ютері є фізичний порт DB-25 (паралельний), ви можете відключити його в BIOS. Windows 8.1 не підтримуватиме його і нам це не потрібно.
Для підключення принтера до комп'ютера використовується модель кабелів, що рухається кабелем 16899 USB до DB25, паралельний принтер. Адаптер встановлюється автоматично і не розпізнається як паралельний пристрій або порт LPT.
Тепер відкрийте Пристрої та принтери. Клацніть Додати принтер і виберіть потрібний принтер у списку. У наступному діалозі виберіть Додати локальний принтер або мережевий принтер з ручними налаштуваннями, а при наступному діалозі - Використовуйте існуючий порт. Виберіть зі списку віртуальний порт принтера для USB, або USB001, або USB002, а не параметри порту LPT.
Перший принтер - багатомодовий матричний принтер Panasonic KX-P1191. Принтер не вказаний у діалоговому вікні, у якому запитується драйвер, і оновлення списку натисканням кнопки "Оновлення Windows" не допоможе. Перевірка веб-сайту підтримки Panasonic вказує, що принтер повністю не підтримується, але фахівець з технічної підтримки Panasonic допоміг розгадати сліди, які призвели до драйвера Epson FX Series 1 (80), включеного до Windows 8.1. Це прекрасно працює.
Тепер принтер встановлений. Але він знаходиться на порту USB001 і програма буде друкувати тільки на порт LPT1. Рішення є досить простим і може бути інтегровано прямо в пакетний файл, який використовується для запуску програми. Давайте прийдемо в стару школу і пограємо на нашому принтері: ми поділимось нею та надрукуємо на LPT1 таким чином.
Клацніть правою кнопкою миші принтер і виберіть "Властивості". Поділіться принтером, не перелічіть його в каталозі, створіть коротке ім’я спільного доступу лише на добру оцінку, а потім переконайтеся, що користувач клієнтської машини вказаний у розділі Групи чи імені користувача на вкладці Безпека.
Двоє людей, які будуть друкувати ці принтери, створюють мою зарплату, тому я надав їм права адміністратора домену. Це може бути зайвим. Обидва є користувачами на первинному домені, але не другорядному, і я не хотів витрачати час на усунення проблеми з дозволами.
Тепер змініть пакетний файл і використовуйте добре задокументовану команду net use для реалізації рішення друку:
@echo off
::delete the printer
net use lpt1 /delete
::add the printer
net use lpt1 \\\COMPUTER\PRINTER /persistent:yes
::fire up the nasty ol' DOS program
<existing syntax used to start the program>
Там, де КОМП'ЮТЕР - ім’я комп'ютера, а ПРИНТЕР - ім'я спільного доступу принтера. Процедура однаково добре працювала на другому комп’ютері для принтера HP LaserJet 1100 за допомогою драйвера HP LaserJet 1100 (MS), який постачається разом із Windows 8.1.
- ПРИМІТКИ -
Помилка системи 5:
Переконайтеся, що користувач вказаний у вкладці безпеки. "Кожен" може бути видалений. Чи потрібні користувачеві права користування доменом? Можливо, ні, якщо все працює з одного домену.
Помилка системи 66:
Перевірте свій синтаксис. Ви, мабуть, неправильно написали ім’я комп’ютера, принтера чи, можливо, пропустили двокрапку? По документації Microsoft потрібна лише одна двокрапка. Чи додасть непотрібну двокрапку в lpt1 [:], спричинить збій?
Все про мережеве використання:
https://technet.microsoft.com/en-us/library/bb490717.aspx