2012-06-22 34 views
2

我正在创建一个C#程序,它将显示使用水晶报表创建的报表。我已经完成了这份报告。但之后,当我试图在C#中查看报告时,它提示我出现错误“无效TLV记录”。这可能是什么原因?请帮忙。谢谢。在c#中执行水晶报表时无效的TLV记录

代码:

private void reportViewer1_Load(object sender, EventArgs e) 
    { 
     CRAXDRT.Report rpt = new CRAXDRT.Report(); 
     CRAXDRT.Application app = new CRAXDRT.Application(); 
     rpt = app.OpenReport(Application.StartupPath + "\\Reports\\Pay2Final.rpt", null); 
    } 

错误消息: enter image description here

回答

3

试试这个

“无效的TLV记录” 的错误信息都可能出现,原因如下:

有缺失客户端计算机上的运行时文件。检查随Crystal Reports安装的开发人员运行时帮助文件(Runtime.chm)以获取所需运行时文件的列表。

'UFManager.dll'未分配给客户端计算机。确保它位于“C:\ Program Files \ Common Files \ Crystal Decisions \ 2.0 \ bin”文件夹中。

Crqe.dll未在客户端计算机上注册。在任务栏上,点击“开始”按钮,然后点击“运行”。在“打开”文本框中,输入“regsvr32”。例如,

REGSVR32 “C:\ Program Files文件\ \ 2.0 \ BIN \ crqe.dll共同文件\水晶决定”

报告文件已损坏。有关更多信息,请参阅知识库文章c2005670。

客户端计算机没有“CommonFiles”注册表子项。要创建此注册表子项,请按照下列步骤操作:

==================== 警告:

使用注册表编辑器会导致严重的问题 这可能需要重新安装 操作系统。 Crystal Decisions不是 ,它负责使用Windows注册表编辑器使用 导致的任何问题。使用注册表编辑器 需要您自担风险。建议您在编辑之前备份注册表, 。

====================

  1. 在任务栏上,单击 '开始' 按钮,然后单击 '运行'。

  2. 在“打开”组合框中键入'Regedit',然后单击'确定'。

  3. 展开注册表项:

\ HKEY_LOCAL_MACHINE \ SOFTWARE \的Crystal Decisions \ 9.0 \ Crystal报告

  1. 右键单击 'Crystal报告' 文件夹,选择 '新建' | '字符串值',并命名新密钥'CommonFiles'。

  2. 右键单击 'CommonFiles' 子项中,选择 '修改',并在 '数值数据' 文本框中键入以下值:

“C:\ Program Files文件\ Common Files文件\ Crystal Decisions的\ 2.0 \ BIN \”

或检查此链接

http://it.toolbox.com/wiki/index.php/Solve_the_%22Invalid_TLV_Record%22_error_in_running_Crystal_Report

+0

我按照您的指示,但没有任何反应。仍然有错误。 – sean