国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

在.net App中集成COM組件的一些簡單技巧

2024-07-10 13:08:38
字體:
來源:轉載
供稿:網友
菜鳥學堂:

   上次在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。給公司的版本是簽名的,我給出沒有簽名的版本,請合理使用。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 霍邱县| 三江| 汉寿县| 营山县| 健康| 灵璧县| 澄江县| 集安市| 乐平市| 家居| 高淳县| 黎川县| 青田县| 清原| 蛟河市| 苍梧县| 镇江市| 武乡县| 孟村| 潞西市| 胶南市| 宁武县| 德昌县| 贡觉县| 墨江| 新平| 武威市| 涞源县| 尖扎县| 安岳县| 阳信县| 明水县| 酉阳| 伊吾县| 登封市| 彭阳县| 彭阳县| 乌拉特前旗| 河北区| 塔河县| 龙南县|