使用C / C ++在Windows中打印HTML文档?

时间:2014-01-11 08:34:00

标签: c++ c windows

我正在尝试用C / C ++创建Microsoft Windows应用程序。该应用程序的目标是将文本文件作为输入,解析文本文件并以HTML文件的形式生成输出。

然后使用连接到计算机的打印机打印生成的HTML文件。

一切都很简单,但打印。问题是我不知道如何控制打印机来执行打印作业,无论是HTML文档还是其他任何打印作业。

我在论坛和互联网上搜索了一个解决方案,但这是我的问题:

  • 我对Linux编程知之甚少,因为我来自Linux背景。
  • 我从未使用过Visual C ++编译器,因此我很难理解事情的进展情况。 (我只使用过GCC / G ++)。

我想知道的是,是否有任何可用的API,我可以直接使用我的MinGW编译器。或者,如果有任何其他方法,我可以使用随Visual C ++编译器提供的Windows API(我想在Windows中使用Visual Studio)来学习如何执行此操作。

编辑:我还想知道是否有任何方法可以将文件直接打印到打印机,避免每次打印作业完成时弹出窗口。我正在处理的应用程序执行大量打印作业,因此如果可以避免那些要求用户通过自动检查可用打印设备并选择一个打印设备来选择打印设备的弹出对话框。

谢谢。

1 个答案:

答案 0 :(得分:1)

您可以使用Win32 shell ShellExecute进行打印。这里有另一个question,在批准的答案中,shell关联被描述为“可怕的”方法(我不太同意,它是选择关联的用户),但答案还有另一个要运行的命令,也许还有ShellExecute。我可以提供一些代码,但是这个解决方案没有什么可担心的或非常困难的。

编辑以编辑使用GDI的解决方案(跳过shell):How To: Print Using the GDI Print API,也找到一些带有一些代码的question,但我认为我一样好别人去搜索:)。