郁闷了将相同的水晶报表从vs2003移到vs2005上一浏览水晶报表就会弹出数据库登录框。(winform)
试了网上很多方法都没有用求哪位大侠指导下,非常感谢。//TableLogOnInfo logOnInfo = new TableLogOnInfo();
                //for (int i = 0; i < rpt.Database.Tables.Count; i++)
                //{
                //    logOnInfo.ConnectionInfo.ServerName = ".";
                //    logOnInfo.ConnectionInfo.DatabaseName = "NEWDEMO_DB";
                //    logOnInfo.ConnectionInfo.UserID = "sa";
                //    logOnInfo.ConnectionInfo.Password = "futaba";
                //    rpt.Database.Tables[0].ApplyLogOnInfo(logOnInfo);
                //}

解决方案 »

  1.   

    代码是这样的
    BMSMasterData rptData = this.objFacade.GetRptData(strTransNo);                if (rptData.Tables[0].Rows.Count <= 0)
                    {
                        tabControl1.SelectedIndex = 0;
                        MessageBox.Show("没有需要显示的数据");
                        return;
                    }
                    tabControl1.SelectedIndex = 1;
                    //rptData.WriteXmlSchema("BMSLWQ070");
                    //CrystalDecisions.CrystalReports.Engine.ReportClass rpt;
                    BMSLWQ070Rpt rpt = new BMSLWQ070Rpt();
                    rptData.WriteXmlSchema("BMSLWS070Schema.xsd");
                    //TableLogOnInfo logOnInfo = new TableLogOnInfo();
                    //for (int i = 0; i < rpt.Database.Tables.Count; i++)
                    //{
                    //    logOnInfo.ConnectionInfo.ServerName = ".";
                    //    logOnInfo.ConnectionInfo.DatabaseName = "NEWDEMO_DB";
                    //    logOnInfo.ConnectionInfo.UserID = "sa";
                    //    logOnInfo.ConnectionInfo.Password = "futaba";
                    //    rpt.Database.Tables[0].ApplyLogOnInfo(logOnInfo);
                    //}
                    foreach (CrystalDecisions.Shared.IConnectionInfo connection in rpt.DataSourceConnections)
                    {
                        connection.SetConnection("local", "NEWDEMO_DB", "sa", "futaba"); 
                    }                 rpt.SetDataSource(rptData.Tables[0].DefaultView);
                    crv.ReportSource = rpt;
                    crv.DisplayToolbar = true;
                    crv.ShowRefreshButton = false;
                    crv.ShowGroupTreeButton = false;
                    crv.DisplayGroupTree = false;
                    crv.ShowExportButton = true;