Форум программистов, компьютерный форум, киберфорум
Наши страницы
Принтеры, МФУ
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Maks
Модератор
Эксперт по компьютерным сетямЭксперт HardwareЭксперт Windows
3746 / 1842 / 239
Регистрация: 13.03.2013
Сообщений: 8,453
Записей в блоге: 4
1

Универсальное решение для печати на принтеры по сети

14.03.2018, 09:40. Просмотров 853. Ответов 0
Метки нет (Все метки)

Приветствую, уважаемые участники форума.

Компания «Microsoft» настолько быстро выпускает новые продукты, что далеко не все могут угнаться за данной тенденцией в плане аппаратного обеспечения и периферии.
В данном топике речь пойдет о КМА, программного обеспечения которого под современные ОС нет ни на сайте изготовителя, ни на ресурсах компании «Microsoft».
Также, приведенный ниже способ, подойдет в качестве альтернативного решения при удаленной печати через RDP, если пользователь или администратор локального компьютера не имеет административных прав на удаленном сервере.

Данный способ дает возможность печатать на принтер, расшаренный на другом компьютере (или виртуальной машине), без инсталляции драйверов.

Итак, суть следующая: допустим мы имеем старенький принтер (неважно, с каким интерфейсом), который подключен к машине с Windows XP/7, а мы вынуждены работать за машиной с Windows 8/8.1/10, у Вендора КМА нет ПО под последнюю ОС, а печатать нужно.
Первым делом, необходимо создать папку с общим доступом на ПК, к которому подключен принтер, либо папку на локальном компьютер, с которого требуется выводить документы на печать, т.е. организовать файловый обмен.
Далее, необходимо скачать и установить в систему виртуальный PDF-принтер, например, PDFCreator (для нашей задачи достаточно версии "Free")

Универсальное решение для печати на принтеры по сети


По завершению установки желательно перезагрузить систему.

Далее, нам необходимо указать, куда будут складываться файлы выведенные на виртуальный принтер, для этого в программе PDFCreator заходим в «Файл->Настройки->Общие» и меняем расположение на заранее расшаренную папку ПК с подключенным принтером. Заодно, отключаем оповещения.

Универсальное решение для печати на принтеры по сети


На ПК, к которому подключен принтер, запускаем скрипт (лучше создать в планировщике задание, с триггером "При запуске компьютера"):

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Option Explicit : Dim objWord, objDoc, wssh, objFS, objShell, objPath, objFolder, objItem
 
Set wssh = CreateObject("WScript.Shell")
Set objFS = CreateObject("Scripting.FileSystemObject")
Set objPath = objFS.GetFolder("C:\Folder\") 'Папка, из которой файлы отправляются на печать
 
Do
  PrintDelInFolder objPath
  WScript.Sleep 1000 ' Частота проверки папки -- 1 секунда 
Loop
 
Sub PrintDelInFolder(objFolder)
    For Each objItem In objFolder.Files
        If StrComp(objFS.GetExtensionName(objItem.Name), "pdf", vbTextCompare) = 0 Then
                With wssh
            WScript.Sleep 1000
                    On Error Resume Next
            dim f
            f = Cstr(objItem.Path+".pdf")
            objFS.MoveFile objItem.Path, f
            If err.number=0 then 
                Set objShell = CreateObject("Shell.Application")        
                objShell.ShellExecute f, "vbHide", "", "print", 0
                set objShell = nothing
                err.Clear
                Do
                WScript.Sleep 5000
                objFS.DeleteFile f ,true 
                        Loop While objFS.FileExists(f)
                err.Clear
            End If
            On Error Goto 0
        End With
        End If
    Next
End Sub
WScript.Quit 0
Скачать скрипт Print.vbs.zip

Важно: данный скрипт будет выводить печать на принтер, установленный по умолчанию!
Также, рекомендуется добавить данный скрипт в исключения антивируса!


После создания скрипта необходимо добавить его в автозагрузку системы на том ПК, к которому подключен принтер.
Существует немало способов прописать скрипт в автозагрузку системы, но лично я всегда делаю это посредством Планировщика заданий.
Как создать задачу в Планировщике заданий
Все ниже приведенные действия следует выполнять под учетной записью пользователя с правами администратора.

1. Запускаем планировщик заданий: нажимаем сочетание клавиш Win+R вводим команду taskschd.msc и нажимаем Enter;

2. Наводим курсор на Библиотека планировщика заданий щелкаем правой кнопкой мыши и выбираем Создать простую задачу;

Универсальное решение для печати на принтеры по сети


3. В открывшемся окне указываем имя задачи, описание и нажимаем Далее;

Универсальное решение для печати на принтеры по сети


4. В следующем окне указываем При запуске компьютера и нажимаем Далее;

Универсальное решение для печати на принтеры по сети


5. В окне Действие указываем Запустить программу, нажимаем Далее;

Универсальное решение для печати на принтеры по сети


6. В следующем окне нажимаем Обзор -> выбираем нужный файл -> Открыть -> Далее;

Универсальное решение для печати на принтеры по сети


7. В последнем окне нажимаем Готово и перезагружаем компьютер.

Универсальное решение для печати на принтеры по сети

Также можно воспользоваться другим способом добавления файла в автозагрузку системы, используя системный реестр.
Включение скрипта в автозагрузку системы через реестр
Все ниже приведенные действия следует выполнять под учетной записью пользователя с правами администратора.

1. Запускаем редактор реестра: нажимаем сочетание клавиш Win+R вводим команду regedit.exe и нажимаем Enter;

2. Далее переходим по ветке HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run;

3. По свободному месту в разделе Run нажимаем правой кнопкой мыши->Создать->Строковый параметр;

Универсальное решение для печати на принтеры по сети


4. Задаем имя параметру;

Универсальное решение для печати на принтеры по сети


5. Нажимаем правой кнопкой мыши по созданному параметру->Изменить;

Универсальное решение для печати на принтеры по сети


6. В открывшемся окошке указываем путь к нашему скрипту и нажимаем Ок.

Универсальное решение для печати на принтеры по сети

По сути, файл после печати должен сам удалиться, но если этого по каким-либо причинам не произойдет, следует создать задание в планировщике с файлом BAT/CMD, который будет удалять файлы PDF в расшаренной папке, скажем, раз в сутки.

Windows Batch file
1
2
3
echo off
DEL /F /S /Q /A "Путь до папки, из которой файлы отправляются на печать"
Exit /b
Скачать скрипт Clean.bat.zip

Также данный способ подойдет и для виртуальных машин.
Для Windows 7 корпорацией «Майкрософт» разработан инструментарий, под названием XP Mode
В Windows 8/8.1/10 в редакциях Pro имеется возможность виртуализации Hyper-V, т.е. есть возможность создать виртуальную машину и установить на нее не ресурсоёмкую Windows XP, выделив 128/256 Mb ОЗУ.
Также можно установить альтернативную платформу для виртуальных машин Oracle VM VirtualBox
В этом случае, Вы сможете печатать на стареньком КМА без участия других физических машин и ЛВС.

Вот, собственно, и все.

Желаю удачного ремонта.

Вопросы, дополнения, замечания и пожелания по данной теме просьба выкладывать здесь
5
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.03.2018, 09:40
Ответы с готовыми решениями:

Принтеры HP LaserJet P3015, ошибка печати с верхнего лотка
Таких принтеров на работе - 6 штук. Устал с ними бороться! Новая беда. Когда...

Принтеры какого типа имеют самое лучшее качество печати фото? Сублимационные?
Прочитал в Википедии...

Попытке печати создается очередь печати и пропадает. принтер молчит. подключен по сети
конкретно проблема с принтером mfp_m132a. он подключен напрямую к виндовс хп...

Фабрика печати Epson или лазерный принтер для ч/б печати
Здравствуйте! Нужен практичный принтер с (!)дешёвой стоимостью печати. Печатаю...

HP mf420 не выходит из сна при печати по сети
Добрый день! Установил сервер печати на windows server 2008R2, После этого...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.03.2018, 09:40

Принтеры для печати наклеек и на кембриках
Для работы использую специализированный принтер для печати на ПВХ и...

Универсальное решение для построения предприятия электронной торговли на сервлетах/JSP под Tomcat и с БД Post
Здравствуйте Извините за дурацкую просьбу. Пишу диплом по теме универсальное...

Универсальное решение
Как в этом куске кода заменить эту часть ('продукт') на что-нибудь...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Закрытая тема Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru