Перейти к публикации

Печать с помощью макроса.


Рекомендованные сообщения

Доброго времени суток, Уважаемые.

Вопрос по печатанию в ProEngineer.

Начиная с ProE 19, все время пользовался макросами (сейчас WF4, но все продолжает работать).. На предыдущем месте работы какая-то умная голова создала печать с помощью фалов .bat и .pcf. Весь опыт и багаж я прихватил с собой и настроил без проблем на новом месте (принтеры HP).

батник (LJ2300-1-A4h.bat) следующего содержания:

copy P:\setup\config_WF3\Printers\a4.txt+%1 \\COMP028\LJ2300-11

файлик а4.txt совсем странного содержания

&l26A&l1O

pcf:

plotter LASERJET4V

plotter_command P:\setup\config_WF3\Printers\LJ2300-1-A4h

paper_size a4

plot_names yes

delete_after_plotting yes

plot_file_dir c:\temp

pen_table_file P:\setup\config_WF3\Printers\table.pnt

ОРИГИНАЛЫ ФАЙЛОВ ПРИЦЕПЛЕНЫ В АРХИВЕ

Printers.rar

такой же принцип написан для А3 и др..

Все принтеры были HP LaserJet..

Сегодня столкнулся с проблемой печати на Canon IR2016. не могу настроить печать по мапкею.

Народ, кто печатает мапкеями (без различных доп. нажатий и VBA ), расскажите, как грамотно настроить систему, чтобы печатало автоматом (нажал pt3 - пошла печать А3, нажал pt4 - пошла печать А4)

Ссылка на сообщение
Поделиться на других сайтах


Я печатаю через Менежер Windows. Добиться прямой печати не так просто. Комманда печати указанная в настройках, должна быть способна отправить печать именно на указанный принтер. То есть надо знать комманды дос для прямой печати, чего принтер может и не поддерживать.

п.к. Печать с помощью макроса с внешним скриптом.

Ссылка на сообщение
Поделиться на других сайтах

Доброго времени суток, Уважаемые.

Вопрос по печатанию в ProEngineer.

Начиная с ProE 19, все время пользовался макросами (сейчас WF4, но все продолжает работать).. На предыдущем месте работы какая-то умная голова создала печать с помощью фалов .bat и .pcf. Весь опыт и багаж я прихватил с собой и настроил без проблем на новом месте (принтеры HP).

батник (LJ2300-1-A4h.bat) следующего содержания:

copy P:\setup\config_WF3\Printers\a4.txt+%1 \\COMP028\LJ2300-11

файлик а4.txt совсем странного содержания

&l26A&l1O

pcf:

plotter LASERJET4V

plotter_command P:\setup\config_WF3\Printers\LJ2300-1-A4h

paper_size a4

plot_names yes

delete_after_plotting yes

plot_file_dir c:\temp

pen_table_file P:\setup\config_WF3\Printers\table.pnt

ОРИГИНАЛЫ ФАЙЛОВ ПРИЦЕПЛЕНЫ В АРХИВЕ

Printers.rar

такой же принцип написан для А3 и др..

Все принтеры были HP LaserJet..

Сегодня столкнулся с проблемой печати на Canon IR2016. не могу настроить печать по мапкею.

Народ, кто печатает мапкеями (без различных доп. нажатий и VBA ), расскажите, как грамотно настроить систему, чтобы печатало автоматом (нажал pt3 - пошла печать А3, нажал pt4 - пошла печать А4)

Всегда сначала создаю PDF средствами ПроЕ и помещаю его с русским именем "обозначение+наименование" в специально для этих файлов созданную папку. Потом распечатать не проблема на любом принтере.

Ссылка на сообщение
Поделиться на других сайтах

Всегда сначала создаю PDF средствами ПроЕ и помещаю его с русским именем "обозначение+наименование" в специально для этих файлов созданную папку. Потом распечатать не проблема на любом принтере.

Может быть и так (а как имя создается? c пом. VBS?)...

Но это лишние телодвижения :).

У нас по макросу печатается на принтер с нужным форматом, создается pdf (ложится в спец. папочку) и создается dxf (тож ложится в свою папочку..).

У нас для PDF своя table.pnt.. Чтобы тонюсенько было - можно было увеличивать красиво на мониторе.. На принтере этот PDF выглядит уже не очень красиво.

Неужели все печатают через MS_PRINT_MGR?

Народ, делитесь тайной :helpsmilie:

Ссылка на сообщение
Поделиться на других сайтах

Делал как то мапкей который настраивает MS_PRINT_MGR под нужный формат печати, потом передает управление

WSH (Windows Script Host) который уже управлет окошком MS_PRINT_MGR и доводит дело до конца.

Выглядел WSH примерно так.

Set WshShell = CreateObject("WScript.Shell")

rem задание окна для распечатки

result = InPutBox("Укажите номер окна для печати:", "Конфигуратор печати")

WshShell.AppActivate("Pro/ENGINEER Wildfire 2.0")

if result<>"" then

WshShell.SendKeys("%(w" &result &")")

WScript.Sleep 200

rem выбор формата печати

format = InPutBox("Выберите формат печати: " &vbCrLf &" 1 - A1 " &vbCrLf &" 2 - A2" &vbCrLf &" 3 - A2x3" &vbCrLf &" 4 - A4x3" &vbCrLf &" 5 - Выход", "Конфигуратор печати")

rem запуск макроса Pro/E

WshShell.AppActivate("Pro/ENGINEER Wildfire 2.0")

WScript.Sleep 500

WshShell.SendKeys("prnt0")

WScript.Sleep 500



rem конфигуратор ProE

WshShell.AppActivate("Printer Configuration")

WshShell.SendKeys("{TAB 7}")

WScript.Sleep 200

WshShell.SendKeys("+{HOME}")

WScript.Sleep 200



rem конфигурация принтера прое в соответствии с форматом

if format = "1" then

WshShell.SendKeys("20")

WshShell.SendKeys("{TAB}")

WScript.Sleep 200

WshShell.SendKeys("+{HOME}")

WScript.Sleep 200

WshShell.SendKeys("9")

end if



if format = "2" then

WshShell.SendKeys("6")

WshShell.SendKeys("{TAB}")

WScript.Sleep 200

WshShell.SendKeys("+{HOME}")

WScript.Sleep 200

WshShell.SendKeys("20")

end if



if format = "3" then

WshShell.SendKeys("20")

WshShell.SendKeys("{TAB}")

WScript.Sleep 200

WshShell.SendKeys("+{HOME}")

WScript.Sleep 200

WshShell.SendKeys("6")

end if



if format = "4" then

WshShell.SendKeys("6")

WshShell.SendKeys("{TAB}")

WScript.Sleep 200

WshShell.SendKeys("+{HOME}")

WScript.Sleep 200

WshShell.SendKeys("20")

end if



rem выбор принтера Windows

WScript.Sleep 200

WshShell.SendKeys("{TAB 4}")

WScript.Sleep 200

WshShell.SendKeys("{ENTER}")

WScript.Sleep 2200



rem Настройка формата бумаги

WshShell.SendKeys("{ENTER}")

WScript.Sleep 200

WshShell.AppActivate("Печать")

WshShell.SendKeys("\\{TAB} ")

WScript.Sleep 200

WshShell.SendKeys(" {ENTER}")

WScript.Sleep 300

WshShell.SendKeys("%(m)") 

WScript.Sleep 200



if format = 1 then

WshShell.SendKeys("%(w)880") 

WScript.Sleep 200

WshShell.SendKeys("%(g)608") 

end if

if format = 2 then

WshShell.SendKeys("%(w)460") 

WScript.Sleep 200

WshShell.SendKeys("%(g)605") 

end if



if format = 3 then

WshShell.SendKeys("%(w)1300") 

WScript.Sleep 200

WshShell.SendKeys("%(g)608") 

end if



if format = 4 then

WshShell.SendKeys("%(w)450") 

WScript.Sleep 200

WshShell.SendKeys("%(g)680") 

end if





WScript.Sleep 400

WshShell.SendKeys("{ENTER}")

WScript.Sleep 200

WshShell.SendKeys("{TAB 6}")

WScript.Sleep 200

WshShell.SendKeys("{ENTER}")

else

WShScript.Echo "Печать отменена"

end if

Система правда не прижилась.

Изменено пользователем LinchK
Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...

Делал как то мапкей который настраивает MS_PRINT_MGR под нужный формат печати, потом передает управление

WSH (Windows Script Host) который уже управлет окошком MS_PRINT_MGR и доводит дело до конца.

Выглядел WSH примерно так.

Set WshShell = CreateObject("WScript.Shell")....Система правда не прижилась.Да, понятно, что не прижилась..

уж очень сложно.

с принтерами HP можно настроить все гораздо проще...

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

Но вот с Canon как ни мучаюсь - ни как не получается. :(

:helpsmilie::helpsmilie: :helpsmilie:

Ссылка на сообщение
Поделиться на других сайтах

А какая разница между принтерами HP и Canon?

У меня один и тот же макрос с одинаковым успехом печатает как на лазерном, так и на матричном принтере.

Ссылка на сообщение
Поделиться на других сайтах

А какая разница между принтерами HP и Canon?

У меня один и тот же макрос с одинаковым успехом печатает как на лазерном, так и на матричном принтере.

Доброго времени суток!

А вы не выложите свой макрос для лицезрения? и настройки принтера (файлик pcf)

Хочется понять, в чем разница с моим..

Меня гложет подозрение, что отказывается печатать по причине параметра

plotter LASERJET4V

но это только "на ощущениях"..

Кто может подробно описать, что за команда такая и что она описывает. А также для чего она нужна? и как ее правильно настроить(от чего зависит)?

:helpsmilie:

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.



×
×
  • Создать...