ASP.NET:如何将文件从数据库发送到打印机?

时间:2008-11-10 20:36:14

标签: c# asp.net

我有一个ASP.NET 2.0(C#)网页,其中包含一个从MS SQL数据库中提取blob并以适当的文件格式输出的链接,即Word,WordPerfect,PDF。

我的用户只需点击一下即可打印这些文件。现在他们必须单击链接打开文件,然后单击他们提交的文件中的“打印”按钮。

此外,如果可能的话,我只想点击一下就可以将多个文件发送到打印机。

感谢。

2 个答案:

答案 0 :(得分:2)

您要打印到连接到服务器的打印机,还是连接到客户端?

如果您想在客户端上打印,您将没有太多机会。对于HTML内容,也许某些JavaScript或Flash可能会触发打印对话框(不确定),但如果它是必须在第三方应用程序中打开的文件(即PDF,DOC,XLS等),那么您就不在运气。

如果是内部网络,您可以创建一个安装在每个客户端PC上的桌面应用程序,然后触发打印。

如果它是连接到服务器的打印机,您可以使用标准的.net工具进行打印,尽管您可能不得不解决您尝试打印PDF / DOC / XLS等的情况,因为那样的话需要使用自动化(COM或类似SendKeys),这将导致您在服务器上头痛。

所以简而言之:你只能使用ASP.net做的事情不多。

答案 1 :(得分:0)

我最接近的是使用Javascript:

<body onload="window.print()">
...
</body>

会在页面加载时弹出打印对话框(有关详情,请参阅this post)。如果您考虑一下,除非您在内部网络上,否则您可能无法做其他事情。您希望计算机如何“自动”开始打印弹出窗口?