Установка принтера по умолчанию в 1С 7.7.
Обработка может быть полезна в том случае, когда нужно установить принтер по умолчанию, а доступа к рабочему столу нет (например, терминальный режим без рабочего стола или remoteApp)
Обработка может быть полезна в том случае, когда нужно установить принтер по умолчанию, а доступа к рабочему столу нет (например, терминальный режим без рабочего стола или remoteApp)
Поместите эту функцию в глобальный модуль и вызывайте из любого места.
Функция глУстановитьПринтерПоУмолчанию() Экспорт
Перем Нетворк;
Нетворк = СоздатьОбъект("WScript.Network");
Принтеры = Нетворк.EnumPrinterConnections();
спсПринтеры = СоздатьОбъект("СписокЗначений");
//спсПринтеры.ДобавитьЗначение(0, "Показать документ");
Для СчЦ=0 По Принтеры.length-1 Цикл
спсПринтеры.ДобавитьЗначение(Принтеры.Item(СчЦ + 1), "Распечатать "+Принтеры.Item(СчЦ + 1));
СчЦ=СчЦ+1;
КонецЦикла;
Устройство = 0;
Если спсПринтеры.ВыбратьЗначение(Устройство, , , 60,1)=1 Тогда
Нетворк.SetDefaultPrinter(Устройство);
КонецЕсли;
Возврат Устройство;
КонецФункции
Тестировалось на 7.70.027.
ну… еще можно юзать практически «штатную» Формекс. Там есть метод получения списка принтеров. Плюс в том, что еще и готовность принтера получается
Ответ плюсую, толково… Про формекс просто не был в курсе… Да и формекс юзать сложнее, но преимущества налицо