我正在使用独立水晶报告在我的项目,这是在windows应用程序。在这里,我想通过登录凭证。下面的代码正在使用。
Private Sub cmd_print_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmd_print.Click
        Dim strConnection As String = "..."
        Dim cr As New CrystalDecisions.CrystalReports.Engine.ReportDocument
        Dim strReportPath As String = "d:\ReportFtLabel.rpt"
        cr.Load(strReportPath)
        Dim ConnectInfo As New CrystalDecisions.Shared.ConnectionInfo
        With ConnectInfo
            .ServerName = "RRRR"
            .DatabaseName = "RRRR"
            .UserID = "XXXX"
            .Password = "XXXX"
        End With
        For Each Table As CrystalDecisions.CrystalReports.Engine.Table In cr.Database.Tables
            Dim LogOnInfo As CrystalDecisions.Shared.TableLogOnInfo
            LogOnInfo = Table.LogOnInfo
            LogOnInfo.ConnectionInfo = ConnectInfo
            Table.ApplyLogOnInfo(LogOnInfo)
        Next
        objSCIP_ml = New SCIP_ml
        objSCIP_bll = New scip_bll
        Dim DS As New DataSet
        DS = objSCIP_bll.bll_GetHandShake(objSCIP_ml)
        If Not DS Is Nothing Then
            cr.Load(strReportPath)
            cr.SetDataSource(DS)
            CrystalReportViewer1.ReportSource = cr
            CrystalReportViewer1.Refresh()
        End If
        DS = Nothing
        objSCIP_ml = Nothing
        objSCIP_bll = Nothing
    End Sub但是它会抛出以下错误。

我错过了传递登录信息的地方..。任何建议和解决方案都是非常感谢的。提前谢谢。
发布于 2014-11-16 14:50:04
您可以将它作为键添加到中,如下所示:
    <add key="ServerName" value="RRRR"/>
    <add key="DataBaseName" value="RRRR"/>
    <add key="DatabaseUser" value="XXXX"/>
    <add key="DatabasePassword" value="XXXX"/>并在您的代码中调用它们,比如:
    Dim SERVER_NAME As String = ConfigurationManager.AppSettings("ServerName").ToString()
    Dim DATABASE_NAME As String = ConfigurationManager.AppSettings("DataBaseName").ToString()
    Dim DatabaseUser As String = ConfigurationManager.AppSettings("DatabaseUser").ToString()
    Dim DatabasePassword As String = ConfigurationManager.AppSettings("DatabasePassword").ToString()
    .UserID = "XXXX"
    .Password = "XXXX"https://stackoverflow.com/questions/26943250
复制相似问题