|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Как отправить на печать документ в формате pdf |
|
PowerShell - Как отправить на печать документ в формате pdf
|
Пользователь Сообщения: 142 |
Профиль | Отправить PM | Цитировать Прошарил весь интернет, нигде не нашёл.
|
|
Отправлено: 07:55, 23-10-2013 |
Ветеран Сообщения: 1758
|
|
Отправлено: 08:24, 23-10-2013 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 142
|
Профиль | Отправить PM | Цитировать примерно такое мне и подсказали: вот.
PS Но мне это не подходит по одной причине: там печать идёт на принтере по умолчанию, а мне нужно выбирать принтер, на котором будет идти печать. |
Последний раз редактировалось Lich130387, 23-10-2013 в 10:01. Причина: ЗЫ Отправлено: 10:00, 23-10-2013 | #3 |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать AcroRd32.exe /N /T PdfFile PrinterName
|
Отправлено: 19:10, 23-10-2013 | #4 |
Пользователь Сообщения: 142
|
Профиль | Отправить PM | Цитировать Цитата Kazun:
У меня эта строка выглядит так: C:\Program Files\Adobe\Reader 11.0\Reader\AcroRd32.exe /N /T f:\test\Tst.pdf doPDF v7 |
||
Отправлено: 11:45, 25-10-2013 | #5 |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать &"C:\Program Files\Adobe\Reader 11.0\Reader\AcroRd32.exe" /N /T "f:\test\Tst.pdf" "doPDF v7"
|
Отправлено: 11:49, 25-10-2013 | #6 |
Пользователь Сообщения: 142
|
Профиль | Отправить PM | Цитировать Написал такой скрипт:
cls function Print-File ($FilePath=“f:\test\Tst.pdf”) { Start-Process –FilePath $FilePath –Verb Print -PassThru | %{sleep 10;$_} | kill } function Get-DefaultPrinter { $printer = Get-WmiObject win32_printer foreach($prn in $printer) { if ($prn.Default) {return $prn} } } function Set-DefaultPrinter ($name) { if (!$name) { Write-Host "Не указано имя принтера. Операция прервана" return 0 } else { $internal = GWMI -class Win32_Printer | Where {$_.Name -eq $name} $internal.SetDefaultPrinter() return 1 } } $printer = Get-WmiObject win32_printer $DefPrnName = $NULL $prns = @() $i = 1 $DefPrnName = (Get-DefaultPrinter).Name do { Write-Host "Печатать на принтере, выбранном по умолчанию ($DefPrnName)? (y - yes,n - no, x - exit)" $ans1 = Read-Host if ($ans1 -eq "x") {exit} } until (($ans1 -ine "y") -or ($ans1 -ine "n")) If ($ans1 -eq "y") {Print-File} elseif ($ans1 -eq "n") { Write-Host "Выберете принтер для печати тестовой страницы:" foreach($prn in $printer) { $prns += $prn Write-Host $i -NoNewline Write-Host (") "+$prn.Name) $i++ } Write-Host "0) Выход" $i-- $numprn = Read-host If ($numprn -eq 0) {exit} $result = $NULL If ($numprn -match "[1-$i]") { $result = Set-DefaultPrinter ($prns[$numprn-1].Name) $DefPrnName = (Get-DefaultPrinter).Name Write-Host "По умолчанию установлен принтер $DefPrnName" } If ($result -eq "1") {Print-File} } Чуть позже попробую воспользоваться советом Kazun, возможно, скрипт станет попроще. |
Отправлено: 13:50, 25-10-2013 | #7 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Разное - [решено] Абракадабра с выводом pdf на печать | The_Immortal | Microsoft Windows 2000/XP | 8 | 24-09-2012 18:55 | |
[решено] Подскажите чем открыть документ в формате xml ? | micro8 | Хочу все знать | 8 | 12-05-2012 14:30 | |
[решено] Печать страницы *.pdf документа на нескольких листах. | LilLoco | Хочу все знать | 6 | 30-09-2011 15:26 | |
2010 - Powerpoint | Печать слайда в формате А1 на принтере формата А4 | Drec555 | Microsoft Office (Word, Excel, Outlook и т.д.) | 3 | 06-06-2011 18:10 | |
Невозможно открыть документы в формате .pdf | Marusya | Хочу все знать | 9 | 19-01-2003 20:54 |
|