Vb.net 使用crystal Report加载报告失败

Vb.net 使用crystal Report加载报告失败,vb.net,crystal-reports,Vb.net,Crystal Reports,尝试在vb.net应用程序中打印crystal report时,我遇到一个错误(加载报告失败) 但是我的问题是(这个错误并不总是发生)可能在打印了未知数量的报告之后,一旦这个错误发生了 这是我的密码: Dim cmd As New OleDbCommand Dim connp As New OleDbConnection Dim da As New OleDbDataAdapter Dim ds As New DataSet Dim strsql As S

尝试在vb.net应用程序中打印crystal report时,我遇到一个错误(加载报告失败) 但是我的问题是(这个错误并不总是发生)可能在打印了未知数量的报告之后,一旦这个错误发生了

这是我的密码:

    Dim cmd As New OleDbCommand
    Dim connp As New OleDbConnection
    Dim da As New OleDbDataAdapter
    Dim ds As New DataSet
    Dim strsql As String
    Dim strreprotname As String
    Try
        connp.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Application.StartupPath & "\report.mdb; Jet OLEDB:Database Password=KNOZ1003"
        connp.Open()
        ds.Reset()
        strsql = "select * from tab3"
        cmd.CommandText = strsql
        cmd.Connection = connp
        da.SelectCommand = cmd
        da.Fill(ds)
        strreprotname = "cashrpt"
        Dim strreportpath As String = Application.StartupPath & "\Reports\" & strreprotname & ".rpt"
        Dim rptdocument As New CrystalDecisions.CrystalReports.Engine.ReportDocument
        Dim prnset As New Printing.PrinterSettings
        Dim pg As New Printing.PageSettings
        rptdocument.Load(strreportpath)
        rptdocument.SetDataSource(ds.Tables(0))
        rptdocument.SetDatabaseLogon("", "", "", Application.StartupPath + "\report.mdb")
        prnset.PrinterName = cashprinter
        rptdocument.PrintToPrinter(prnset, pg, False)
        cmd.Dispose()
        connp.Close()
    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try