Ada*_*dam 14 c# ms-access crystal-reports
我使用Crystal Reports XI编写了一个报告,链接到Access数据库C:\ MyData.mdb.
该报告有一个字段(本例简化),没有子报告.
我使用C#.NET 4使用Forms和WPF Cyrtsal Report Viewer.
该报告在运行Windows XP的开发PC以及运行Windows XP的其他"tills"上成功查看.
但是,在运行WePOS(一种削减Windows XP)的情况下,报告"始终"显示一个对话框,询问登录详细信息,即用户名和密码.
此对话框还显示C:\ MyData.mdb的正确路径.
我花了很多天在这上面,以各种方式进行测试(我敢肯定每个人都记得这些时候!).
我使用此代码来确保数据库正确链接到:
TableLogOnInfo logonInfo;
foreach (CrystalDecisions.CrystalReports.Engine.Table table in report.Database.Tables)
{
logonInfo = table.LogOnInfo;
logonInfo.ConnectionInfo.ServerName = string.Empty;
logonInfo.ConnectionInfo.DatabaseName = "C:\MyData.mdb";
logonInfo.ConnectionInfo.UserID = string.Empty;
logonInfo.ConnectionInfo.Password = string.Empty;
table.ApplyLogOnInfo(logonInfo);
}
Run Code Online (Sandbox Code Playgroud)
...它适用于使用Windows XP的每台PC,除了带有WePOS的PC.
我也玩过:
report.SetDatabaseLogon(string.Empty, string.Empty, "C:\MyData.mdb", string.Empty);
Run Code Online (Sandbox Code Playgroud)
......但没有区别.
我只能得出结论,WePOS是如此"减少",以至于Crystal默默无法通过认证......请帮助!
这个 WePos 东西是否具有从文件系统中的文件夹/位置读取的正确权限,或者您是否需要提升权限或从该位置读取某些内容。当您连接到远程网络文件夹时可能会出现同样的问题。然后,您还必须指定该计算机上的凭据才能访问它。这有道理吗?