Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 22.12.2009
Сообщений: 6

Как принудительно сохранять все распечатаное?

22.12.2009, 17:21. Показов 2291. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно в word 2002 автоматически(без всяких окон и сообщений) всё, что распечатывается на принтер сохранять на диске. Скажем в файлах гггммддччмм.doc некоторогого каталога. Возможно ли так настроить ворд, и как это сделать?
Может подменить или подкорректировать процедуру, вызываемую при команде распечатать.
Важно, что записывать надо и то, что печаталось без сохранения в файле.
Буду признателен и за наводки, где порыть и что почитать в тему.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.12.2009, 17:21
Ответы с готовыми решениями:

Как сохранять все данные из одной функции в переменной?
Добрый день! Занялся реализацией ротатора баннеров. Написал генератор баннеров по размеру (т.е. юзер выбирает размер, и ему аяксом...

Как при чтении HTML файла отвязаться от картинок-файлов и все сохранять в одной переменной?
Здравствуйте. Как при чтении HTML файла отвязаться от картинок-файлов и все сохранять в одной переменной? Добавлено через 37 минут ...

Как программно сохранять файл xls в текстовом формате, и всё время в одно и тоже место?
Коллеги, доброго времени суток! Помогите, как програмно сохранять файл *.xls в текстовом формате и всё время в одно и тоже место (имя). ...

12
Почетный модератор
Эксперт по компьютерным сетямЭксперт Windows
 Аватар для magirus
28049 / 15785 / 983
Регистрация: 15.09.2009
Сообщений: 67,752
Записей в блоге: 78
22.12.2009, 17:28
средствами офиса нельзя...
0
0 / 0 / 0
Регистрация: 22.12.2009
Сообщений: 6
22.12.2009, 17:52  [ТС]
Цитата Сообщение от magirus Посмотреть сообщение
средствами офиса нельзя...
Тогда получается, что нельзя вообще...
Ведь откуда системе знать, что там делал ворд. Я думал, что печать осуществляется вызовом некоторого макроса(назначенного на сочетание ctrlP) и возможно его подкорректировать или перехватить вызов.
В multiedit это обстоит именно так и такая возможность мной использовалась. Неужели ворд менее гибок?
0
 Аватар для Toxa33rus
3924 / 925 / 125
Регистрация: 16.04.2009
Сообщений: 1,970
22.12.2009, 19:38
Может можно посмотреть что печатается в данный момент... Если имя печатаемого файла совпадает с текущим то сохранится. Все это запускается в бесконечном цикле из невидимого окошка. Бред конечно но в теории может получиться)))
0
0 / 0 / 0
Регистрация: 22.12.2009
Сообщений: 6
22.12.2009, 20:07  [ТС]
Цитата Сообщение от Toxa33rus Посмотреть сообщение
Может можно посмотреть что печатается в данный момент...
Вообще думаю, задача достаточно необходимая и средства должны быть предусмотрены разумностью офиса. В моем случае печатаются справки, за которые берут деньги и необходимо устранить возможность оператору делать "левые". Есть системный журнал, аудит, можно и так, но тогда не выяснишь, кому он это делал, а в шапке справки это прописано конкретно. Да и содержание может быть совсем небезопасным. Есть еще автосохранение, кто силен в механизме, может подскажет, как его доработать, чтобы не трогать оригинал,делая сохранение под генерируемым именем в другом каталоге и не через фиксированное время, а при печати.
0
 Аватар для BasicMan
19318 / 2626 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
22.12.2009, 20:25
ну насчет ctrl+p назначить - можно любому макросу, и кнопку можно заменить на собственную и пункт в меню (правда смотря какой офис, до 2003 без проблем)
0
0 / 0 / 0
Регистрация: 28.09.2009
Сообщений: 88
23.12.2009, 10:43
Отлавливать событие вывода на печать в самом Word-е, конечно, можно, но нет никакой гарантии, что документ будет действительно распечатан
(это событие срабатывает и при предварительном просмотре)

В общем случае программного решения нет. (Документ может быть не распечатан - к примеру, тонер в принтере закончился, - а Windows будет думать, что документ напечатан.

Я бы посоветовал использовать виртуальный принтер - вся печать из Word-a отправляется на него, а он уже, в свою очередь, попутно сохраняя в файл отпечатанную страницу, отправляет задания печати на реальный принтер.

Такие программы есть - например, BiPrint
В данном случае эта программа, скорее всего, не подойдёт, но наверняка существует множество аналогичных.
Таким образом, я предлагаю использовать средства Windows вместо средств Office для перехвата отправленного на печать. (хотя макросом сделать это можно намного проще)
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
26.12.2009, 18:41
corvett,
опиши конкретно, как осуществляется печать (кто запускает на печать) и для чего это надо?
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
28.12.2009, 07:45
И сколько принтеров используется. Надо ли указывать количество копий и заходить в свойства принтера, чтобы там выставить какие-нибудь параметры.
0
0 / 0 / 0
Регистрация: 22.12.2009
Сообщений: 6
28.12.2009, 14:12  [ТС]
Цитата Сообщение от Busine2009 Посмотреть сообщение
corvett,
опиши конкретно, как осуществляется печать (кто запускает на печать) и для чего это надо?
Спасибо за участие.
Принтера два: Лазерник lbp и струйник stilus (оба GDI). На худой случай можно учитывать печать только на лазернике, там где печатается справка с личными данными.Количество копий учитывать не надо. Если в рукописном журнале не обнаружат фамилии для которой распечатывалась справка - это и есть тот случай, для которого городится весь огород - чтоб не печатали "левых". В какой то мере решает проблему установить в свойствах притера галочку - "не удалять напечатанные документы", но не надо большого ума, чтоб зайти и удалить вручную. Вторая проблема данного решения - нет вьювера для сохраненных в каталоге спулера файлов, т.е. их можно повторно распечатать, но не просмотреть(что было бы желательно.) Если бы печать могла запускать дополнительно некий cmd не проблема из него запустить архивацию в каталоге спулера с удалением. Это уже кое что, но не могу найти способа при печати, которую делают двумя способами(нажатие на иконку принтера в ворде или нажатие ctrlP) запускать нечто мое.
В свойствах пользователь вполне может что нибудь менять, но необходимости в этом нет, кроме количества копий иногда.
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
28.12.2009, 22:17
corvett,
ситуация следующая.
Если бы было достаточно использования кнопки "Печать" на Стандартной панели инструментов и одного принтера, то тогда проблему можно решить. Но здесь пахнет Файл - Печать..., сопровождающемся вызовом диалогового окна "Печать". В этом случае нужно повесить Код на кнопку "Окей", что не представляется возможным простыми средствами, т.е. нужно создать обработчик создания события по нажатию кнопки "Окей" - можно ли такое сделать - не знаю.

Добавлено через 15 минут
Да я нашёл ключевое слово, за 200 рублей продам его, если не подойдёт, то верну.
Я нашёл обработчик события кнопки Окей в диалоговом окне Печать. Ура товарищи, ура.
0
2309 / 1541 / 115
Регистрация: 13.06.2009
Сообщений: 5,575
14.02.2010, 14:09
Перепутал - это снова связано с моей волшебной кнопкой, но я её просто так не отдам, я подумал, что нашёл другой способ.
0
 Аватар для ironegg
1905 / 782 / 31
Регистрация: 11.02.2010
Сообщений: 1,567
14.02.2010, 17:19
когда то у меня получилось использовать простенькую API функцию в макросе. может и hook можно поставить.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.02.2010, 17:19
Помогаю со студенческими работами здесь

При сохранении картинки в TGA все цвета тускнеют, если сохранять в JPEG или PNG, то всё в порядке
При сохранении картинки в TGA все цвета тускнеют, если сохранять в JPEG или PNG, то всё в порядке. Покопался в настройках фотошопа, если...

В каких файлах у разных браузеров хранится галочка сохранять/не сохранять пароли?
Нужен способ отключить сохранение паролей во всех браузерах одновременно. Все известные обновляющиеся Chrome / Opera / Firefox / IE /...

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

По нажатию кнопки сохранять данные во все таблицы
Имеется форма с полями, некоторые поля это отдельные таблицы.

Как принудительно перерисовать форму?
Ситуация: Есть Form1 на ней Frame1 в нем TreeView1. Проблема: При Resize Form1 иногда пропадает прорисовка элементов контролов... ...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru