v7: Как проверить наличие установленного принтера
☑
0
BLP
06.03.13
✎
17:02
Подскажите, как в процедуре указать следующее
Если "ТАкой-то принтер" имеется Тогда
блаблабла
Иначе
КонецЕсли;
Меня интересует как прописать после если проверку на принтер
1
sapphire
06.03.13
✎
17:05
использовать wmi
2
sapphire
06.03.13
✎
17:06
3
lucifer
06.03.13
✎
17:07
(0) в БСП реализована работа с Twain, и там есть такая возможность
4
lucifer
06.03.13
✎
17:07
(3) аа это 7, извиняюсь
5
Юрий Лазаренко
06.03.13
✎
17:08
(0) Вот кусок кода из 8-ки, думаю под 7.7 получится переделать:
&НаСервере
Процедура ПолучитьСписокПринтеровНаСервере()
ИмяКомпьютера = ".";
ServiceSet = GetCOMObject("winmgmts:{impersonationLevel=impersonate}!\\"+ИмяКомпьютера+"\root\cimv2");
PrinterSet = ServiceSet.Get("Win32_Printer");
Попытка
PrinterItems = ServiceSet.ExecQuery("Select * from Win32_Printer");
Исключение
Сообщить("Ошибка получения списка принтеров: " + ОписаниеОшибки());
Возврат;
КонецПопытки;
Принтеры.Очистить();
Для Каждого ТекСтрока Из PrinterItems Цикл
НоваяСтрока=Принтеры.Добавить();
НоваяСтрока.ПоУмолчанию = ТекСтрока.Default;
НоваяСтрока.Имя = ТекСтрока.Name;
//НоваяСтрока.Состояние = СписокСостояний[ТекСтрока.PrinterStatus%8];
//НоваяСтрока.Состояние = ТекСтрока.PrinterStatus % 8;
НоваяСтрока.Комментарий = ТекСтрока.Comment;
НоваяСтрока.Описание = ТекСтрока.Description;
НоваяСтрока.ИмяПорта = ТекСтрока.PortName;
КонецЦикла;
КонецПроцедуры
6
sapphire
06.03.13
✎
17:10
(5) это и есть wmi-запрос к ветке cimv2
7
Злопчинский
06.03.13
✎
18:44
(0) в формексе есть метод - возвращает список принтеров.
8
BLP
06.03.13
✎
19:51
(7) Короче, ничего не понял. (((
Вот Формекс у меня есть, а как написать эо конкретно, можно пожалуйста? ))
9
Тьма
06.03.13
✎
19:57
(8)
Сервис=Создатьобъект("Сервис");
СписокПринтеров=Сервис.ПолучитьСписокПринтеров();
10
DES
06.03.13
✎
20:07
Попытка
исключение
Прокатит ?
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс