簡體   English   中英

Crystal Report要求數據庫登錄,僅在WinXP中

[英]Crystal Report asking Database Login, Only in WinXP

我需要幫助。 這是我的C#代碼,用於顯示報告:

TableLogOnInfos crtableLogoninfos = new TableLogOnInfos();
TableLogOnInfo crtableLogoninfo = new TableLogOnInfo();
ConnectionInfo crConnectionInfo = new ConnectionInfo();
Tables CrTables;

//Let's say I have a report called RptExample
RptExample objRpt = new RptExample();

//Set Static Text
txtTitle = objRpt.ReportDefinition.ReportObjects["TextTitle"] as TextObject;
txtTitle.Text = "Test";

//This is my connection info
crConnectionInfo.ServerName = "SERVERNAME\\SQLEXPRESS"; 
crConnectionInfo.DatabaseName = "DBNAME";
crConnectionInfo.UserID = "USER";
crConnectionInfo.Password = "PASS";

CrTables = objRpt.Database.Tables;

foreach (CrystalDecisions.CrystalReports.Engine.Table CrTable in CrTables)
{
    crtableLogoninfo = CrTable.LogOnInfo;
    crtableLogoninfo.ConnectionInfo = crConnectionInfo;
    CrTable.ApplyLogOnInfo(crtableLogoninfo);
}

//CRV is my CrystalReportViewer
CRV.LogOnInfo = crtableLogoninfos;
CRV.ReportSource = objRpt;   

在Windows 7中可以正常工作,但是當我嘗試使用Windows XP時,總是彈出“數據庫登錄”窗口,僅要求輸入密碼(SERVERNAME,DBNAME和USERNAME字段已經填充了正確的字符串,只有PASSWORD丟失了)。

我做錯了什么?

非常感謝<3

編輯:

我發現僅當我使用公共IP訪問數據庫服務器時才出現此問題,再次是僅在Windows XP中而不是在7中。

因此,我的連接信息如下所示:

crConnectionInfo.ServerName = "202.70.xx.xx\\SQLEXPRESS"; 
crConnectionInfo.DatabaseName = "DBNAME";
crConnectionInfo.UserID = "USER";
crConnectionInfo.Password = "PASS";

我還嘗試使用創建報告向導來創建報告,它也無法使用公共IP(202.70.xx.xx東西)找到​​我的數據庫服務器。

使用本地數據庫服務器,我的代碼在WinXP中可以正常工作。

更多的幫助將不勝感激;)

編輯2:

哦,我忘了。 我也嘗試使用真實的服務器名稱而不是服務器的公共IP,但無濟於事

非常簡單...當我們使用域網絡和受限網絡時,將發生此問題。

在任何XP SYSTEM中安裝Crystal Report Designer。 然后更新數據源位置(請參閱圖像)。 在此處輸入圖片說明

然后構建項目並使用...享受...。

這可能是由於沒有sql server本機客戶端引起的。 嘗試將其安裝在Windows XP計算機上:

http://download.microsoft.com/download/2/7/c/27c60d49-6dbe-423e-9a9e-1c873f269484/sqlncli.msi

這可能是簡單的SQL Server或防火牆配置問題。 也許您的W7和XP計算機具有不同的IP地址,甚至子網或網絡?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM