在没有用户交互或弹出窗口的情况下在Windows上打印传真

时间:2012-12-10 23:13:52

标签: windows printing fax

我被告知有一个传真调制解调器作为打印机运行,我可以将其用作Windows中的标准打印机来完成打印到传真目的地。真的吗?如果是这样,那么最好的传真调制解调器是什么?

我看到Windows 7中有一个名为Microsoft Shared Fax Driver的传真设备。是否可以打印到纯粹的代码中,无需用户交互或弹出窗口,以实现打印到传真?

这适用于我正在处理的应用程序,它可以直接向打印机生成报告。但我们正在与希望报告直接传真的客户交谈。我们的应用程序是一个报告库,因此没有用户交互,例如,可以配置设置传真号码。我们在Java端使用J2D + JPS,在.NET端使用System.Drawing.Printing。我知道客户端可以使用第三方库实现这一点,但我想解决使用我们现有的直接打印机功能的可能性。

1 个答案:

答案 0 :(得分:1)

您可以使用内置Fax Service Extended COM API以编程方式发送传真,而无需任何用户互动。

API允许您检查机器上是否安装了任何传真设备(通过FaxService.FaxDevices集合),并通过Body属性将文件附加到FaxDocument

警告:Body属性实际上是一个字符串,其中包含应作为传真发送的文件路径。从文档:正文必须与该计算机上安装的应用程序相关联,并且应用程序必须支持PrintTo动词。这意味着您无法直接从内存中对象传真报表;您必须在某个位置生成某个临时可打印文件(图像,PDF或XPS)的报告,并将其路径设置为Body的{​​{1}}属性。