PDA

Показать полную графическую версию : Печать из консоли - не найдено сетевое имя


Akella2007
10-12-2015, 16:09
Приветствую.

есть BAT файл с таким содержимым:
copy %1 \\zotac1\EPSONLXЦель: печать DOS`овских файлов из браузера на матричный принтер EPSON.
В Firefox установлено самописное дополнение, которое сохраняет текстовый файл на ПК пользователя во временную папку и вызывает файл C:\ProgramData\toprn.bat

в итоге выполняется вот такая команда:
toprn.bat C:\Users\user73\AppData\Local\Temp\suggestedName.txt

Ошибка:
Не найдено сетевое имя.
Скопировано файлов: 0.Windows 10 x64.

Проявляется только вот на одном ПК.

Принтер расшарен, виден в сети, печать на него идёт.

Самое интересное:
- если файл suggestedName.txt скопировать в папку C:\ProgramData\ и запустить ручками: toprn.bat suggestedName.txt, то ошибок нет и печать выполняется.
- если файлы toprn.bat и suggestedName.txt скопировать, например, в корень диска D или во временную папку и ручками запустить toprn.bat suggestedName.txt, то ошибка проявляет себя.

здесь https://social.msdn.microsoft.com/Forums/ru-RU/83baa224-8673-4d4b-9852-2906f1312b71/copy-windows-10 тоже описал проблему

Akella2007
21-12-2015, 13:40
up up

Petya V4sechkin
21-12-2015, 18:56
Akella2007, сделайте лог Process Monitor (http://technet.microsoft.com/ru-ru/sysinternals/bb896645) следующим образом:
запустите Process Monitor;
попытайтесь запустить свой BAT-файл, чтобы появилась ошибка;
сохраните лог: меню File -> Save -> PML-формат;
заархивируйте и выложите на любой файлообменник, например rghost.ru.

Akella2007
22-12-2015, 11:26
сделдал, как просили

http://rghost.ru/8j8kdRxvb

Charg
22-12-2015, 11:56
В пути когда с диска Д запускаешь - пробелы есть? В кавычки то может надо взять путь.

Еще, почитал вот темку по ссылке вверху... если компьютер печатает сам на себя - зачем к нему по сети то обращаться? Принтер же шнуром к этому же компьютеру и подключен, верно?

Akella2007
22-12-2015, 12:18
пробовал и в кавычках - проблема та же

В пути когда с диска Д запускаешь - пробелы есть? »
так с диска Д и запускаю же

Еще, почитал вот темку по ссылке вверху... если компьютер печатает сам на себя - зачем к нему по сети то обращаться? Принтер же шнуром к этому же компьютеру и подключен, верно? »

да, по USB

а как выполнить печать DOS файла?
обычного текстового файла на матричном принтере

не путайте с графической печатью

copy %1 lpt

не получится, LPT-порта НЕТ

Charg
22-12-2015, 13:07
Я не знаю особенностей такой печати, просто предполагаю что должен быть какой-то способ не замыкаться самому на себя по сети, а печатать как-нибудь напрямую.

Вот например гугл подсказывает 2 варианта http://windowsitpro.com/systems-management/how-can-i-print-usb-printer-command-prompt

Akella2007
22-12-2015, 13:50
первый вариант
net use LPT2 \\<machine>\<printer share> /yes

это же так, как я и печатаю

>>start /min notepad /P <filename>

это уже графическая, а не текстовая печать

http://www.dosprn.com/ попробую, отпишусь

Petya V4sechkin
22-12-2015, 17:02
Akella2007, на файле D:\s.txt правой кнопкой мыши -> Свойства -> флажок/кнопка Разблокировать -> Применить.

Akella2007
22-12-2015, 17:31
Разблокировка помогла, НО...

Проблема вот в чем.
В Firefox`е открыт текстовый файл - отчёт. Пользователь нажимает кнопку и дополнение сохраняет этот текстовый файл во временную папку, а затем вызывает команду:
toprn.bat suggestedName.txt

т.е. возможности разблокировать нет
или нужно ОС как-то заставить автоматически разблокировать или не блокировать

Windows блокирует текстовый файл - это уже паранойя

Iska
22-12-2015, 18:23
т.е. возможности разблокировать нет
или нужно ОС как-то заставить автоматически разблокировать или не блокировать »
Необходимо и достаточно удалить альтернативный поток данных с именем «Zone.Identifier». В принципе, можно просто тупо удалить все альтернативные потоки данных, например, посредством утилиты Streams (https://technet.microsoft.com/en-us/sysinternals/streams.aspx) или скрипта/командлета PowerShell, вызывая их в том же пакетном файле.

Можно, конечно, запретить Firefox добавлять сведения о зоне, но я лично этого бы не рекомендовал делать.

Windows блокирует текстовый файл - это уже паранойя »
Это нормально, и делается не первый и не второй год.

Akella2007
23-12-2015, 10:58
Цитата Iska:
Необходимо и достаточно удалить альтернативный поток данных с именем «Zone.Identifier». В принципе, можно просто тупо удалить все альтернативные потоки данных, например, посредством утилиты Streams или скрипта/командлета PowerShell, вызывая их в том же пакетном файле. »


Это нужно сделать один раз или постоянно?
Почему тогда на других ПК таких проблем нет?




© OSzone.net 2001-2012