数码冲印数码照片网上冲印
站内搜索: 分类: 关键字:
您的位置:首页网站设计.Net专栏 → 关于ActiveReport使用ActivexViewer输出时,客户端不会提示下载控件的问题.
关于ActiveReport使用ActivexViewer输出时,客户端不会提示下载控件的问题.
日期:2005-10-30 22:48:32 人气:     [ ]
数码冲印 网上冲印

今天QA测试报表的时候发现,所有ActiveReport做的报表都显示一个红色的×,而完全不提示要下载控件.

我在自己的机器上看报表是没有问题,因为我已经安装了. 但是, 为什么放到服务器上面就不提示呢?

首先我想到的是, 服务器没有配置HttpHandler. 所以我先按照步骤配置好. 这里要注意的是, IIS5跟IIS6是有区别的. 具体如下:
IIS5只需要对整个web site配置handler就可以,这个配置对于这个web site下面的所有站点都是有效的.
IIS6不同,需要对没有虚拟路径配置,各个路径是独立的. 不受web site的整体配置影响.

配置好之后, 发现问题依旧.

于是我查看我的C:\WINNT\Downloaded Program Files\目录下面那些已经安装了的组件, 竟然发现Active Report Viewer2的CodeBase不是我的Application的路径. 而是我之前建了另外一个站点的路径. 于是我手动删除了那个组件. 然后run我的application,这时候,报表既不显示也不提示了,跟其他机器浏览的一样.

那到底是什么原因呢?

我决定研究一下我之前建的另外那个站点为什么可以提示我安装组件, 到底跟现在这个application有什么不同.

刚开始还是没有头绪, 我就直接把下面一段代码放到application的页面里面,试试它会不会自动下载.
<OBJECT id="arv1" codeBase="arview2.cab" height="0" width="0" classid="clsid:8569D715-FF88-44BA-8D1D-AD3E59543DDE"
 VIEWASTEXT>
 <PARAM NAME="_ExtentX" VALUE="11218">
 <PARAM NAME="_ExtentY" VALUE="7329">
</OBJECT>
奇怪的是, 这样的代码也不会提示. 真郁闷.

百无聊赖之下, 我突然想起了CodeBase, 是不是路径不对呢?

果然, 代码修改如下即可:
<OBJECT id="arv1" codeBase="/myapp/arview2.cab" height="0" width="0" classid="clsid:8569D715-FF88-44BA-8D1D-AD3E59543DDE"
 VIEWASTEXT>
 <PARAM NAME="_ExtentX" VALUE="11218">
 <PARAM NAME="_ExtentY" VALUE="7329">
</OBJECT>

另外,如果通过代码,也可以这样做
WebViewer1.CodeBase = "/myapp/arview2.cab";


问题解决, 希望能帮助遇到类似问题的朋友.



出处:世纪开元网上冲印搜集整理 作者:佚名
评论人 评论内容摘要(共 条,查看完整内容) 得分 发表时间
本类热点
01.关于vc的mshflexgrid控件的用法(转载:原地址:..
02.用实例学:ASP.NET的include的用法
03.ListView的使用
04.ASP.NET POST方式提交数据!
05.正态分布的随机数发生器 in C#
06.在.net安装程序中部署oracle客户端全攻略
07.蛙蛙推荐:C#编码规范.doc
08.在ASP.NET中处理datetime的一些通用函数(VB)
09.用户 NT AUTHORITY\NETWORK SERVICE 登录失败解决..
10.破译动网验证码的简单方法
本类推荐
网上数码冲印专用QQ:71086443  网上数码冲印专用MSN:photo36588@hotmail.com 网上冲印热线电话:0531-82678928
http://www.36588.com.cn 世纪开元数码照片网上冲印©2001 - 2008
网站地图 | 冲印知识 | 会员利益 | 服务价格 | 质量承诺 | 服务条款 | 隐私政策 | 商业合作 | 关于我们