我有一个带有水晶报表查看器的.net表格 . 我试图在其中加载的报告是使用ADO.Net(xml)类型的连接与文件名的硬编码路径(在本例中为.dll)返回数据集 . 我的问题是该dll的路径因应用程序的安装路径而异 . 所以我需要在代码中覆盖它,但我不知道该怎么做 . 这是我正在使用的代码:

Dim conInfo As New ConnectionInfo()
conInfo.Type = CrystalDecisions.Shared.ConnectionInfoType.CRQE
conInfo.Attributes.Collection.Add(New NameValuePair2("Database DLL", "crdb_adoplus.dll"))
conInfo.Attributes.Collection.Add(New NameValuePair2("QE_DatabaseName", ""))
Dim dba As New DbConnectionAttributes
dba.Collection.Add(New NameValuePair2("Class Name", "class name in that dll"))
dba.Collection.Add(New NameValuePair2("DataSet Names", "method in the class"))
dba.Collection.Add(New NameValuePair2("File Path", "path to dll.dll"))
conInfo.Attributes.Collection.Add(New NameValuePair2("QE_DatabaseType", "ADO.NET (XML)"))
conInfo.Attributes.Collection.Add(New NameValuePair2(DbConnectionAttributes.QE_LOGON_PROPERTIES, dba))
CrystalReportViewer1.ParameterFieldInfo = paramFields
CrystalReportViewer1.ReportSource = ReportFileName

Crystal报表查看器显示并询问登录信息是否有误 .

任何帮助,将不胜感激 .