【发布时间】:2012-01-20 07:26:29
【问题描述】:
我在 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。
- 打印机属性 > 安全 > 大 ASPNET、网络服务,每个人都可以完全访问。
- 试图将另一台打印机设置为默认打印机。重新安装/添加打印机。
我尝试了以上所有方法都没有成功。最后,我在 machine.config 中尝试了以下操作。
- WINNT>Microsoft.NET>Framework>v2.52something>Config> machine.config
我换了这个
processModel autoConfig="true"
有了这个
processModel userName="SYSTEM" password="AutoGenerate"
我收到了这条消息
“在执行打印相关任务之前,您需要安装一个 打印机”
我使用的是 acrobat 7,我可以从打印机本身和 acrobat 软件打印测试页。
【问题讨论】: