Подключение принтера программно через AddWindowsPrinterConnection
текПринтерПоУмолчанию = "NPI510517 (HP LaserJet M1536dnf MFP)";
XLSОбъект = Новый COMОбъект("Excel.Application");
XLSОбъект.Visible = Ложь;
XLSОбъект.DisplayAlerts = Ложь;
ЭксельCOM_WB = XLSОбъект.Workbooks;
тКнига = ЭксельCOM_WB.Open(лИмяФайла);
тКнига.SaveAs(лИмяФайла);
WinMGMT = ПолучитьCOMОбъект("winmgmts:\\" +ИмяКомпьютера()+ "\root\cimv2");
Printers = WinMGMT.ExecQuery("Sel ect * fr om Win32_Printer");
WshNetwork = Новый COMОбъект("WScript.Network");
NetworkPrinters = WshNetwork.EnumPrinterConnections();
Для Каждого Printer ИЗ Printers Цикл
//if(сокрЛП(Printer.Name) = текПринтерПоУмолчанию) then
if найти(Printer.Path_.Path, текПринтерПоУмолчанию)>0 then
//Printer.SetDefaultPrinter();
WshNetwork.AddWindowsPrinterConnection("\\"+Printer.Path_.Server+"\"+текПринтерПоУмолчанию);
WshNetwork.SetDefaultPrinter(текПринтерПоУмолчанию);
endif;
КонецЦикла;
тКнига = ЭксельCOM_WB.Open(лИмяФайла);
тЛист = тКнига.Sheets(1);
тЛист.PrintOut(1,1);
ЭксельCOM_WB.Close();
XLSОбъект.Application.Quit();
ПоказатьXLSОбъект = Новый COMОбъект("Excel.Application");
XLSОбъект.Visible = Ложь;
XLSОбъект.DisplayAlerts = Ложь;
ЭксельCOM_WB = XLSОбъект.Workbooks;
тКнига = ЭксельCOM_WB.Open(лИмяФайла);
тКнига.SaveAs(лИмяФайла);
WinMGMT = ПолучитьCOMОбъект("winmgmts:\\" +ИмяКомпьютера()+ "\root\cimv2");
Printers = WinMGMT.ExecQuery("Sel ect * fr om Win32_Printer");
WshNetwork = Новый COMОбъект("WScript.Network");
NetworkPrinters = WshNetwork.EnumPrinterConnections();
Для Каждого Printer ИЗ Printers Цикл
//if(сокрЛП(Printer.Name) = текПринтерПоУмолчанию) then
if найти(Printer.Path_.Path, текПринтерПоУмолчанию)>0 then
//Printer.SetDefaultPrinter();
WshNetwork.AddWindowsPrinterConnection("\\"+Printer.Path_.Server+"\"+текПринтерПоУмолчанию);
WshNetwork.SetDefaultPrinter(текПринтерПоУмолчанию);
endif;
КонецЦикла;
тКнига = ЭксельCOM_WB.Open(лИмяФайла);
тЛист = тКнига.Sheets(1);
тЛист.PrintOut(1,1);
ЭксельCOM_WB.Close();
XLSОбъект.Application.Quit();
Ругается на
WshNetwork.AddWindowsPrinterConnection("\\"+Printer.Path_.Server+"\"+текПринтерПоУмолчанию);
, подскажите что я делаю не так?
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот