水晶报表WEB打印,直接打印,ACTIVEX打印

水晶报表中<CR:CrystalReportViewer"  PrintMode="pdf" />中将PrintMode=Activex,启用插件打印后,点击打印按钮弹出一个小对话框,但是空白


解决:

在服务器上装上
1、CRRedist2005_x86.msi
2、CRREdist2005_x86_chs.msi
3、CrystalReports10_NET_EmbeddedInstall.msi(序列号:A6860-0900000-U70005X)  

注册表的PrintJobLimit:0,不然会有使用限制。

下载PrintControl.cab
建个.html
<html>
<object   id= "CrystalPrintControl "   classid= "CLSID:BAEE131D-290A-4541-A50A-8936F159563A "   codebase= "http://192.168.0.1\PrintControl.cab "   #Version= "10,2,0,1078 "   viewastext> </object>
</html>

客户端第一次打印时调用一下,安装ActiveX控件~



水晶报表printmode 的pdf改为ActiveX后就是直接打印报表,但是始终出不来,原来还要下载个ActiveX,但是好象官方的下载不下来!最后还是用讯雷下下来放在服务器上.

首先下载printcontrol.cab从:http://support.businessobjects.com/CRforVS2005/PrintControl.cab#

方法一:

一个自己想的方法,但是安装速度比较慢,直接解压PrintControl.cab后把PrintControl.dll添加到引用,这样不需要<add key="url" value="http://localhost/PrintControl.cab" />,这里好象要绝对路径.

方法二:
然后在web.config中插入:

<configSections>
<sectionGroup name="businessObjects">
<sectionGroup name="crystalReports">
<section name="printControl" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, Custom=null" />
</sectionGroup>
</sectionGroup>
</configSections>

<businessObjects>
<crystalReports>
<printControl>
<add key="url" value="http://localhost/PrintControl.cab" />
</printControl>
</crystalReports>
</businessObjects>

注意   只有 Internet Explorer 才會支援 ActiveX 控制項。若從非 Internet Explorer 的用戶端 (FireFox、Safari、Mozilla 等) 列印,將會回復到 PDF 匯出對話方塊。
=====================================

经过我的测试,是IE升级了补丁,对摸态窗的安全加强了,所以就算你将文件放到本地服务器估计也安装失败,除非你自已写代码连续弹出两次摸态窗,才会提示安装,不过这样给用户是不可能的。

我测试过,将代码写入摸态窗,打开页面就自动弹出执行会出错,除非你设个定时器,过30秒或一分钟后再弹出是正常的。

所以完全可以将他的CAB下载回来放到本地服务器,然后写下面代码放到一个单独的页面放用户先安好。

先下载http://support.businessobjects.com/CRforVS2005/PrintControl.cab,放到自已的服务器上。

<object id="CrystalPrintControl" classid="CLSID:BAEE131D-290A-4541-A50A-8936F159563A" codebase="http://127.0.0.1/rpt/PrintControl.cab" #Version="10,2,0,1078" viewastext></object>

#Version是版本号,如果你是其他的版本将版本号修改一下即可。



接着是加载报表失败的问题,因为我新建立一个空项目是正常的,代码是肯定没有问题,所以问题一定在WEB.CONFIG配制文件里,因为我的环境比较复杂,所以WEB.CONFIG是很多配制,就一个一个拆吧,拆到<identity impersonate="true"/>时,也,正常了,原来是不能将他设为true,将他改为<identity impersonate="false"/>就正常了。

调试到一段落,再来后面还会遇到很多麻烦,再一个一个去解决吧。

转载于:https://www.cnblogs.com/rexying/archive/2007/12/24/1012850.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值