我在ASP.NET C#中有以下代碼,並且在本地系統+生產機器中工作正常,當我在調試模式下進行測試時。但是當我上傳到IIS時它不起作用。Process.Startinfo打印PDF不能在Windows Server 2003中從ASP.NET工作
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管理和IIS。
- 打印機屬性>安全性> Grand ASPNET,NETWORK SERVICE,每個人都可以完全訪問。
- 試圖將另一臺打印機設置爲默認打印機。重新安裝/添加打印機。
我試過上述所有都沒有成功。最後我在我的machine.config下面試過。
- WINNT> Microsoft.NET>框架> v2.52something>配置> machine.config中
我取代此
中processModel AUTOCONFIG = 「真」
與此
中processModel的userName =「SYSTEM」密碼=「自動生成」
和我得到這個消息
「之前,你可以進行打印相關的任務,你需要安裝一個 打印機」
我使用的是acrobat 7,我可以從打印機本身和acrobat軟件打印測試頁。
您將不得不在生產計算機上安裝acrobat reader .. Windows必須檢測.pdf擴展名爲acrobat讀者與它相關.. –
是的,我已經安裝在生產機器。實際上,我已經設法使用我在問題中發佈的舊代碼在生產機器中進行打印。幫助 –
嘗試使用「打印」動詞而不是「PrintTo」 –