Подтвердить что ты не робот

Как перезагрузить принтеры в coldfusion без перезапуска службы?

Это мое основное понимание того, как сделать принтер доступным для использования в ColdFusion.

  • Удаленный доступ к серверу, на котором запущен CF, используя учетную запись CF служба работает под.
  • Откройте панель управления Windows и добавьте принтер.
  • Перезапустите службу CF.

Мой вопрос: есть ли способ перезагрузить принтеры без перезагрузки службы CF?

Это проблема, которую мы пытаемся устранить. Детальная информация об ошибке CF:

Error: Printer \\(server)\(printerName) is not available. Available printers are: , şៈ᠘, , , , 凙ᜀᚈ, , 疠쐵䚏, , .

Перезапуск службы CF исправляет это, но, похоже, это происходит довольно часто в последнее время. Мне интересно, есть ли какой-нибудь java-код для перезагрузки принтеров, чтобы это можно было сделать автоматически. Мы используем CF9.

4b9b3361

Ответ 1

Для использования сетевого принтера ColdFusion нужно будет запускать под учетной записью домена, которая имеет разрешения на network resources. Пользователем по умолчанию, с которым работает служба Windows ColdFusion, является localSystem. У этой учетной записи обычно есть много разрешений для локальной системы, но нет разрешений в сети. Обычным решением является создание учетной записи домена для этой цели, а затем установка службы ColdFusion Windows для запуска в качестве этого пользователя в панели управления службами.

Недавно я установил принтер на свой серверный компьютер, и он был обнаружен сразу без каких-либо проблем. Я использую CF10 в 64-разрядной системе Windows 7. Таким образом, следующий код перечислил мой принтер без перезапуска службы вообще:

<cfdump var="#GetPrinterInfo()#">

Надеюсь, это поможет.

Ответ 2

Я работал с Java и принтерами, и, как заявил daveloyall в комментариях, проблема может возникнуть из Java. Тесты показали, что при запуске приложения java он принимает моментальный снимок текущего списка принтеров и никогда не обновляет его, поэтому единственный способ обновить список принтеров - перезапустить приложение.

Ответ 3

Да, sudo разобрался бы... Или, sysadmin устанавливает синхронизацию на более короткий интервал (но это увеличит выделенное время CPU).