VS2008 水晶报表发布后无法打印的解决办法(转)

 
 

我在公司(公司的机器是有连入互联网的)编好水晶报表代码,用的是ActiveX模式,在本机运行,第一次运行提示安装ActiveX控件,安装后,一切正常,能正常打印.

但拿到客户那边运行,一闪而过,连提示安装ActiveX控件也没有,再点"打印图标"也是没反应.后来想想区别,也就是一个上互联网,一个不上,但代码在公司所有的机器运行都正常.
为了验证区别,细心研究了公司里的机器,ActiveX控件到底产生了什么文件,而且是放在那,后来发现,在C分区的WINDOWS文件夹里的"Downloaded Program Files"存放着两个文件.就是"PrintControl.inf"和"PrintControl.dll".当我删了它们,运行报表,立刻提示我再安装ActiveX控件,我安装后,又能正常使用.而且"PrintControl.inf"和"PrintControl.dll".重新安装在里边.由此得知,这两个文件是控制我的报表打印的,
为了还原客户的故障,我先将这两个文件删除,再拔下网线.得到的结果,就跟客户那边一样.
问题的症结是找到了,但怎么解决,客户那边是无论如何也不能上网的。

解决方法是: 1.先下载"PrintControl.cab" http://support.businessobjects.com/CRforVS2005/PrintControl.cab
2.然后配置好IIS. 3.然后在IIS默认根目录下建一个文件夹.如:TEMP
4.把"PrintControl.cab"放到"TEMP"里边去.
5.然后到"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\ASP.NETClientFiles\CrystalReportWebFormViewer4\html"这个地址里找到一个叫"crystalprinthost.html"文件.
6.用记事本打开这个文件,找到"objectTag += window.dialogArguments.codebase;"然后将它注释掉.
改为objectTag += "http://本机IP地址/temp/PrintControl.cab";最后保存.
那么问题就会解决了!记得测试时,拔了网线,以验证成功.

写一个html文件,自动安装ActiveX控件,这样报表就可以在本地打印了

把"PrintControl.cab"放到"TEMP"里边去.设置一下IIS

<html> <object id="CrystalPrintControl" classid="CLSID:83A3D1E4-ADC6-434D-9B61-B8CBA6183441"     codebase="http://127.0.01/temp/PrintControl.cab" version="10,5,1,2285"     viewastext> </object> </html>

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xiaokuang513204/archive/2010/05/11/5580369.aspx

转载于:https://www.cnblogs.com/bx-paper/archive/2012/07/03/2574785.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值