У меня есть код ниже в ASP.NET C #, и он отлично работает в локальной системе + производственная машина, когда я тестировал в режиме отладки.но это не работает при загрузке в IIS.
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = Server.MapPath(filePath);
startInfo.Verb = "print";
startInfo.Arguments = "Printer Name";
Process proc = new Process();
proc.StartInfo = startInfo;
proc.Start();
proc.WaitForExit(5000);
if (proc.HasExited == false)
{
proc.Kill();
}
То, что я пробовал.
- Панель управления> Службы администратора> Службы> Служба администратора IIS> Вкладка «Вход»>проверьте, чтобы взаимодействовать с рабочим столом.Сброс IIS Admin и IIS.
- Свойства принтера> Безопасность> Grand ASPNET, СЕТЬ СЕРВИС, ВСЕ для полного доступа.
- Попытался установить другой принтер в качестве принтера по умолчанию.Переустановите / добавьте принтер.
Я пробовал все вышеописанное, но безуспешно.наконец, я попытался ниже в моей machine.config.
- WINNT> Microsoft.NET> Framework> v2.52something> Config> machine.config
Я заменил
processModel autoConfig = "true"
с этим
processModel userName = "SYSTEM" пароль = "AutoGenerate"
и я получаю это сообщение
«Прежде чем вы сможете выполнять задачи, связанные с печатью, вам необходимо установить принтер»
Я использую Acrobat 7 и яМожно распечатать тестовую страницу с самого принтера и из программного обеспечения acrobat.