网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP.NET技巧
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.ASP.NET入门随想之博德之门 类与.
.ASP.NET超时设置.
.aspx网页以HTML形式存储的几个方.
.如何在调用线程的时候传递参数.
.为Serv-U提供在线修改密码功能 .
.使用UTF-8编码/JMail组件发送邮件.
..Net新手学堂:Lambda表达式的一.
..NET框架下Oracle到SQL Server迁.
.用.NET读取Flash格式文件信息.
.XP安装IIS及Framework后无法访问.
.asp.net如何生成图片验证码(简单) .
.用完HttpWebResponse时别忘了调用.
.ASP.NET 2.0中CSS失效解决方案.
.存储过程的分析.
.url传递中文的解决方案.
.ASP 2.0 数据绑定函数Eval()的机.
.将web窗体页文件(test.aspx)转换.
.ASP.NET 2.0 X64的奇怪问题.
.怎样从ASP.NET 2.0中读取连接字符.
.ASP实现禁止从外部提交数据 .

在.net App中集成COM组件的一些简单技巧

发表日期:2007-1-27


    上次在blog给出了一个简单的调用fastReport组件的小示例,也许有些同学恰巧也在应用FR做报表,不知道大家经历后的感觉如何?
这里我就不抄袭某些权威的关于com的介绍了,如果你完全的不明白,这篇文章不适合你。
先谈一下我对FR的感受,FR源于1997一个俄罗斯人的不经意间的一个决定,他在delphi编程中发现没有一个报表系统可以满足他当时的需要,于是就打算亲手做一个。在98年作者的想做一个快速响应,简单的,支持脚本的报表系统有了正式的命名。作者凭借着很强的ole操作技巧很快的把FR变成了delphi中间使用率很高的报表组件。个人不喜欢pascal语言,自然的就不喜欢delphi,我对FR的景仰完全的是因为作者是一个俄罗斯的程序员,并且FR体现的理念很独到,另外小巧的组件大小也是作者自豪的地方。我这次公开的demo中包含的是FR3.0系列的COM专用组件。我在它的论坛了解到4.0会有部分不兼容3.0并且在报表定义上有些分歧,当然也多了一些功能。
在.net调用com本身是一件很容易的事情,但是有很多技巧需要把握。如果仔细观察demo你会发觉一点,这也是我想和大家分享的地方,因为本篇以FR为例但是不局限于FR,我对FR的了解大致是通透的一份programmers manual和5分钟的user manual跳读,我还没有用FR做过一份业务上的模版,所以一些问题我可能也说不上,据我的同事们说在不同的操作系统中可能会有些细小的bug,所以我推荐用户环境是xp。
中午花了点时间准备,下面就是成果了 :P


            FastReportService.Instance.ShowDesigner(delegate(TfrxReport report) { report.MainWindowHandle = (int)this.Handle; },
                null, GetDataSource(), null, String.Format("{0}\\Simple list.fr3", Application.StartupPath), null);

            FastReportService.Instance.ShowReport(null, null, GetDataSource(), true, false, null,
                               String.Format("{0}\\Simple list.fr3", Application.StartupPath));

            FastReportService.Instance.ShowDesigner((int)this.Handle, GetDataSource());

这是demo中的片断,你可以看到,封装后的.net调用足够的简单。这是常见的三个场景用例。


            service.CustomRegSvr = true;

这个开关显示着一个com免部署的方法。要看效果直接运行FRDemo.exe。我希望可以有些惊奇。

这个demo依赖两个程序集,分别是frlib.dll和RegSvrEx.dll。给公司的版本是签名的,我给出没有签名的版本,请合理使用。
http://www.cnblogs.com/A-Z/archive/2007/01/26/631226.html

上一篇:ASP.NET AJAX正式版带来的Validator问题及解决方案 人气:3854
下一篇:.NET精简框架的“无法找到资源程序集”异常释疑 人气:4076
浏览全部.net的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐