Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net CrystalReportViewer无法使用密码连接ms access数据库/重新加载时出错_Vb.net_Ms Access_Crystal Reports_Report - Fatal编程技术网

Vb.net CrystalReportViewer无法使用密码连接ms access数据库/重新加载时出错

Vb.net CrystalReportViewer无法使用密码连接ms access数据库/重新加载时出错,vb.net,ms-access,crystal-reports,report,Vb.net,Ms Access,Crystal Reports,Report,您好,先生 如何使用crystalreportviewer上的密码连接ms access db。我创建了crystal报表,然后设法将受密码保护的数据库链接到报表上,但当我运行程序时,它会弹出数据库日志,询问我的密码。当我在数据库中输入密码时,它仍然无法登录。请帮忙。非常感谢。 我尝试了在互联网上找到的所有东西,但似乎什么都不管用,或者我在寻找错误的问题 重新加载Crystal报告时出错 Private Sub frmreportviewer_Load(ByVal sender As Syst

您好,先生

如何使用crystalreportviewer上的密码连接ms access db。我创建了crystal报表,然后设法将受密码保护的数据库链接到报表上,但当我运行程序时,它会弹出数据库日志,询问我的密码。当我在数据库中输入密码时,它仍然无法登录。请帮忙。非常感谢。 我尝试了在互联网上找到的所有东西,但似乎什么都不管用,或者我在寻找错误的问题

重新加载Crystal报告时出错

Private Sub frmreportviewer_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Dim CrTables As Tables
    Dim crtableLogoninfo As New TableLogOnInfo
    Dim crConnectionInfo As New ConnectionInfo
    Try
        'reportdoc object
        Dim cryRpt As New ReportDocument
        
        'load report
        cryRpt.Load(My.Application.Info.DirectoryPath.ToString() & "\Report1.rpt")
        
        'parameters definition(if any)
        
        'provide connection info. This is important and you can change it as per your db location
        With crConnectionInfo
            .ServerName = My.Application.Info.DirectoryPath.ToString() & "\abc.mdb"
            '.DatabaseName = ""
            '.UserID = ""
            .Password = "password"
        End With

        CrTables = cryRpt.Database.Tables
        For Each CrTable In CrTables
            crtableLogoninfo = CrTable.LogOnInfo
            crtableLogoninfo.ConnectionInfo = crConnectionInfo
            CrTable.ApplyLogOnInfo(crtableLogoninfo)
        Next

        CrystalReportViewer1.ReportSource = cryRpt
        CrystalReportViewer1.Refresh()
    Catch ex As Exception
        MsgBox(ex.Message)
    End Try
End Sub

我使用了此代码,但在刷新后仍要求登录

我认为数据库文件的路径必须分配给
crConnectionInfo.DatabaseName
,而不是
。ServerName

可能应该编辑问题以显示建立连接的vb.net代码。我不使用任何代码。我手动创建了crystal报告并按源加载了报告。