从Windows服务打印Crystal Reports对象直接打印到打印机

时间:2017-05-09 08:49:14

标签: .net vb.net printing crystal-reports

我正在编写一个VB .net Windows服务,它从SQL数据库中检索数据,然后将其直接输出到指定的打印机。我们的想法是,它会自动生成客户文档并直接打印出来。

我目前正在使用(因为缺乏足够灵活的替代方案)Crystal Reports。我在项目中创建了报告,当前代码如下:

    Dim factory As New DatabaseProviderFactory()
    Dim myDb As SqlDatabase
    Dim ds1 As New DataSet
    Dim x As New myReport
    Dim p As New System.Drawing.Printing.PrinterSettings
    Dim pg As New System.Drawing.Printing.PageSettings


    myDb = factory.Create("mydb")

    ds1 = myDb.ExecuteDataSet("sp_to_get_data")


    x.SetDataSource(dsPickList)
    p.PrinterName = "\\\\printserver\\printername"

    x.PrintToPrinter(p, pg, False)

在谷歌搜索后添加了p和pg变量。在此之前,我正在使用该功能的副本,整理,首页,终页版本。

代码似乎完全执行到我调用PrintToPrinter的位置,此时它只是以代码0退出。根本看不到输出。

除上面的代码外,我在app.config文件中还有以下内容:

  <startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.1"/>  </startup>

这似乎是Crystal Reports版本中的一个错误(根据我见过的其他帖子),但我无法在代码中找到合适的方法。

Project目前针对.NET 4.5.1进行了32位编译。 水晶版是13.0.18.2192

有什么建议吗?

0 个答案:

没有答案