C# IIS 7打印不工作

C# IIS 7打印不工作,c#,asp.net,asp.net-mvc,iis,printing,C#,Asp.net,Asp.net Mvc,Iis,Printing,我正在尝试打印一个文档,该文档在我的Visual studio 2010应用程序中运行良好,但当我在IIS 7上发布我的项目时,打印不起作用,我在事件查看器中看不到任何错误 MyProcess = new Process(); MyProcess.StartInfo.CreateNoWindow = false; MyProcess.StartInfo.Verb = "print"; MyProcess.StartInfo.FileName = destinationPath; MyProces

我正在尝试打印一个文档,该文档在我的Visual studio 2010应用程序中运行良好,但当我在IIS 7上发布我的项目时,打印不起作用,我在事件查看器中看不到任何错误

MyProcess = new Process();
MyProcess.StartInfo.CreateNoWindow = false;
MyProcess.StartInfo.Verb = "print";
MyProcess.StartInfo.FileName = destinationPath;
MyProcess.Start();
MyProcess.WaitForExit(10000);
MyProcess.Close();

当您在VisualStudio中运行时,您是作为登录的交互式用户运行的

当你在IIS中运行时,你不是上述任何一种


通常在web应用程序中执行此操作的方式是:

  • 在浏览器中向用户显示文档
  • 使用JavaScript中的函数打印文档

  • 当您在VisualStudio中运行时,您是作为登录的交互式用户运行的

    当你在IIS中运行时,你不是上述任何一种


    通常在web应用程序中执行此操作的方式是:

  • 在浏览器中向用户显示文档
  • 使用JavaScript中的函数打印文档

  • 如果还有人想知道答案。。 我也遇到了同样的问题,解决方案是让IIS用户能够使用计算机上安装的打印机。从IIS打印时,您是以系统默认用户身份登录的,默认情况下,该用户在注册表中没有正确的打印机访问设置。您需要通过在注册表中添加几个条目,将打印机访问权限授予默认系统用户。像我一样遵循本教程。
    它会解决的

    如果还有人想知道答案。。 我也遇到了同样的问题,解决方案是让IIS用户能够使用计算机上安装的打印机。从IIS打印时,您是以系统默认用户身份登录的,默认情况下,该用户在注册表中没有正确的打印机访问设置。您需要通过在注册表中添加几个条目,将打印机访问权限授予默认系统用户。像我一样遵循本教程。
    它会解决的

    如果服务器上没有安装打印机,则不会发生任何事情

    如果您试图从ASP.NET代码打印到连接到客户端计算机的打印机上,那么它永远不会工作。服务器无法访问并使用客户端计算机上的任何资源


    第二件重要的事情是在IIS应用程序池中将LoadUserProfile更改为true。

    如果服务器上没有安装打印机,则不会发生任何事情

    如果您试图从ASP.NET代码打印到连接到客户端计算机的打印机上,那么它永远不会工作。服务器无法访问并使用客户端计算机上的任何资源


    第二个也是最重要的一点是在IIS应用程序池中将LoadUserProfile更改为true。

    您希望将其打印到哪里?“默认打印机”?哪个用户的默认打印机?您希望在哪里打印?“默认打印机”?哪个用户的默认打印机?那么我应该怎么做?这取决于您要完成的任务。请回答我上面的评论(您希望它打印在哪里)?对于默认打印机,很抱歉我是新加入的。NET和登录用户的默认打印机没有“默认打印机”之类的东西。有一种说法是“给定用户的默认打印机”。您想打印到哪个用户的默认打印机?使用该网站的用户?那么我应该怎么做?这取决于您试图实现的目标。请回答我上面的评论(您希望它打印在哪里)?对于默认打印机,很抱歉我是新加入的。NET和登录用户的默认打印机没有“默认打印机”之类的东西。有一种说法是“给定用户的默认打印机”。您想打印到哪个用户的默认打印机?使用网站的用户?当然,现在您有一个安全问题,因为您允许来自Internet的用户访问您的打印机。事实上,根据您对打印机的访问方式,您可能已经授予了对打印机的访问权限。现在,您的身份验证不仅需要足够好地保护您的应用程序,还需要足够好地保护网络上的资源,如打印机。当然,现在您有一个安全问题,因为您允许来自Internet的用户访问您的打印机。事实上,根据您对打印机的访问方式,您可能已经授予了对打印机的访问权限。现在,您的身份验证不仅需要足够好地保护应用程序,还需要足够好地保护网络上的资源,如打印机。