![]() |
![]() |
![]() |
|
Печать внешних файлов | ☑ | ||
---|---|---|---|---|
0
mzelensky
02.11.12
✎
11:05
|
Доброго всем!
Вроде воопрос довльно простой, но решения пока в "Я" не нашел. Имеется некий внешний файл (вордовский или экселевский). Его нужно РАСПЕЧАТАТЬ программно из под 1С-ки. Как это сделать? |
|||
1
Heckfy
02.11.12
✎
11:06
|
Может тут чего найдешь: v8: Программно распечатать файл.
|
|||
2
mzelensky
02.11.12
✎
11:07
|
(1) что-то я не вижу там решения...
|
|||
3
Heckfy
02.11.12
✎
11:09
|
КомандаСистемы и
print /? Печать текстового файла. PRINT [/D:устройство] [[диск:][путь]имя_файла[...]] /D:устройство Устройство для печати. Может сработает.... Сам не пробовал. |
|||
4
mzelensky
02.11.12
✎
11:11
|
(3) спасибо - попробую....
вопрос только как устройство подставлять...т.е. перед тем как его туда подставлять - нужно же диалог выбора принтера пользователю вывести |
|||
5
mzelensky
02.11.12
✎
11:14
|
А диалог выбора принтера можно в 1С-ке вызвать?! и получить от туда устройство?
|
|||
6
mzelensky
02.11.12
✎
11:24
|
НароооооооД!
Как вот это в 1С-ке выполнить?! intResult = ShellExecute(Me.Hwnd, "open", strNameFile, 0, 0, SW_SHOWNORMAL) |
|||
7
Ёпрст
гуру
02.11.12
✎
11:33
|
можно.. обходтшь коллекцию принтаков и кидаешь их в список - потом выбор из списка
|
|||
8
mzelensky
02.11.12
✎
11:33
|
ну, буду апать....
|
|||
9
mzelensky
02.11.12
✎
11:34
|
(7) ок, следубщий логичный вопрос - как получить коллекцию принтеров?! Ну или хотя бы ОСНОВНОЙ принтер?
|
|||
10
Ёпрст
гуру
02.11.12
✎
11:41
|
Функция ЗаполнитьПринтеры()
Принтеры = Новый СписокЗначений; Состояние("Составляется список принтеров. Подождите."); Попытка Locator = Новый COMОбъект("WbemScripting.SWbemLocator"); Сервисы = Locator.ConnectServer("."); Объекты = Сервисы.InstancesOf("Win32_Printer"); // Теперь переберем все принтеры системы Для Каждого Принтер из Объекты Цикл ИмяПринтера = Принтер.Name; Пока Найти(ИмяПринтера,"\") > 0 Цикл ИмяПринтера = Сред(ИмяПринтера, Найти(ИмяПринтера,"\")+1); КонецЦикла; ИмяПринтера = СокрЛП(ИмяПринтера); Принтеры.Добавить(Принтер.Name,ИмяПринтера); КонецЦикла; Исключение КонецПопытки; Состояние(); Возврат Принтеры; КонецФункции |
|||
11
mzelensky
02.11.12
✎
11:42
|
(10) мммм да, где-то встречал этот код...
|
|||
12
mzelensky
02.11.12
✎
11:43
|
(10) а он так выберет вообще все принтеры установленые на компе? т.е. и локальные и сетевые?
|
|||
13
Ёпрст
гуру
02.11.12
✎
11:44
|
(12) да
|
|||
14
Ёпрст
гуру
02.11.12
✎
11:45
|
как получить принтёр по-умолчанию.. тоже есть код.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |