Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Как распечатать файл из командной строки "правильным" приложением?

Ответить
Настройки темы
VBS/WSH/JS - [решено] Как распечатать файл из командной строки "правильным" приложением?

Ветеран


Сообщения: 1009
Благодарности: 46

Профиль | Отправить PM | Цитировать


так чтобы например pdf распечататался правильно как если бы его отправили на печать из например акробат ридера.
Если значок файла перетащить мышью на значок принтера, файл будет распечатан автоматически с использованием "родного" приложения.
Как сделать также из командной строки (или програмного кода)?

Отправлено: 14:05, 18-03-2009

 


Moderator


Сообщения: 53170
Благодарности: 15429

Профиль | Отправить PM | Цитировать


Yewgeniy, можно .vbs скриптом:
Код: Выделить весь код
Dim objShell
Set objShell = CreateObject("Shell.Application")
objShell.ShellExecute "имя_файла", "", "", "print", 0
WScript.Sleep 1000
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:35, 18-03-2009 | #2



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

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


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата Yewgeniy:
Как сделать также из командной строки…? »
NirCmd:
Код: Выделить весь код
nircmd.exe shexec "print" "<full file name>"
Это сообщение посчитали полезным следующие участники:

Отправлено: 21:51, 20-03-2009 | #3


(*.*)


Сообщения: 36490
Благодарности: 6675

Профиль | Сайт | Отправить PM | Цитировать


Собственно говоря, у Adobe Reader есть свои параметры командной строки, в т. ч. и для печати.

Тихая печать
Код: Выделить весь код
AcroRd32.exe /N /T PdfFile PrinterName [ PrinterDriver [ PrinterPort ] ]
http://www.robvanderwoude.com/comman...es.php#Acrobat

-------
Канал Windows 11, etc | Чат @winsiders

Это сообщение посчитали полезным следующие участники:

Отправлено: 07:45, 23-03-2009 | #4


Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Отправить PM | Цитировать


objShell.ShellExecute "имя_файла", "", "", "print", 0
Здесь где-нибудь можно указать сетевое имя принтера, чтобы, независимо от установленного по умолчанию, печатать на сетевом?

Последний раз редактировалось Vic12, 07-09-2012 в 09:43.


Отправлено: 17:43, 05-09-2012 | #5


Экзорцист


Сообщения: 969
Благодарности: 127

Профиль | Отправить PM | Цитировать


Надо в автоматическом режиме печатать и сразу удалять pdf-файлы в определенном каталоге.
Строка
Код: Выделить весь код
"c:\Program Files (x86)\Adobe\Reader 11.0\Reader\AcroRd32.exe" /n /t c:\temp\print\small.pdf
печатает как положено, но не закрывается окно adobe acrobat - оно остается свернутым в панель задач, соответственно батник не переходит к следующей команде.
Если использовать NirCmd
Код: Выделить весь код
nircmd.exe shexec "print" "c:\TEMP\print\big.pdf"
то батник переходит к следующей строке не дожидаясь полного выполнения команды, т.е. непонятно когда можно удалять направленный на печать pdf-файл.
Как-то можно выйти из этой ситуации?
Версия Adobe acrobat reader - 11.0.15

Отправлено: 11:29, 30-01-2019 | #6

mwz mwz вне форума

Аватара для mwz

Ушел из жизни


Сообщения: 8595
Благодарности: 2127

Профиль | Сайт | Отправить PM | Цитировать


Цитата Michael:
то батник переходит к следующей строке не дожидаясь полного выполнения команды »
Если из пакетного файла — то
Код: Выделить весь код
start /wait nircmd.exe shexec "print" "c:\TEMP\print\big.pdf"

-------
Mikhail Zhilin


Отправлено: 16:58, 30-01-2019 | #7


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


mwz, не думаю, что это поможет: nircmd просто выполняет глагол «print», а саму печать осуществляет ассоциированное с данным глаголом приложение в асинхронном режиме.

Отправлено: 19:08, 30-01-2019 | #8


Экзорцист


Сообщения: 969
Благодарности: 127

Профиль | Отправить PM | Цитировать


mwz, не работает.
Код: Выделить весь код
start /wait nircmd.exe shexec "print" "c:\TEMP\print\big.pdf"
"c:\Program Files (x86)\Adobe\Reader 11.0\Reader\AcroRd32.exe" /n /t c:\temp\print\small.pdf
сначала печатает small.pdf, потом big.pdf, т.е. ожидания нет, ключ wait не работает.
Пробую пойти по другому пути - сначала pdf-файл перенести из каталога печати в подкаталог, отправлять его на печать из подкаталога через NirCmd, удалять позже - может на следующий день, может вручную

Отправлено: 08:19, 31-01-2019 | #9


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата Michael:
сначала печатает small.pdf, потом big.pdf, т.е. ожидания нет, ключ wait не работает. »
Michael, ещё раз: команда start /wait работает. Но дело не в ней. И не в nircmd.exe. Дело в том, что nircmd.exe просто отсылает команду за запуск ассоциированного приложения, и на этом его миссия закончена. И снова: он просто запустил ассоциированное приложение и завершил свою работу. Печать ещё даже не начата, а он уже завершил свою работу. И начинает исполняться следующая команда. Посему не поможет тут никакая start /wait (она тут вообще совершенно лишняя).
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:40, 31-01-2019 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Как распечатать файл из командной строки "правильным" приложением?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интерфейс - [решено] запуск "Свойства папки" из командной строки kovdaev Microsoft Windows 2000/XP 16 23-07-2021 01:13
Ошибка "Данный файл не является приложением Win32" Evita Хочу все знать 14 03-10-2013 14:30
Ошибка - Ошибка "файл не является приложением Win32" Alyaxei Microsoft Windows 2000/XP 12 16-12-2011 20:02
Перенаправление папки "Мои документы" из командной строки hardir Microsoft Windows NT/2000/2003 3 30-06-2008 12:04
[решено] "Файл занят другим приложением..." sirik Хочу все знать 20 10-04-2007 11:50




 
Переход