摘要: 千年虫曾经让it各界、世界各国恐慌了好一阵,各国政府对其的警惕情度不亚于拉登与萨达姆之流。您可曾想到,在您所编写的软件中也可能就一些“千年虫”呢?其实这个千年虫并不是真正的千年虫,只不边与千年虫的功能有些类似,所以我们不妨也把它叫做千年虫。我们在编写程序的时候往往会涉及到日期方面的问题,很多初学者为了省事、便于计算日期或者是认为软件只是测试等原因,将日期的格式设置为mm-dd格式或者是设置为当年-mm-dd,比如是今年是2004年,他就设置为2004-m......
摘要: 标准c++类std::string的 内存共享和copy-on-write技术 陈皓 1、 概念 scott meyers在《more effective c++》中举了个例子,不知你是否还记得?在你还在上学的时候,你的父母要你不要看电视,而去复习功课,于是你把自己关在房间里,做出一副正在复习功课的样子,其实你在干着别的诸如给班上的某位女生写情书之类的事,而一旦你的父母出来在你房间要检查你是否在复习时,你才真正捡起课本看书。这就是“拖延战术”,直到你非要......
序列化FastReport 原本在开发一个报表插件,因为需要远程传输,因此需要序列化报表,序列化fastreport有两种方式,
2.序列化fastreport的结果集(即,得到数据后可以存成的frp文件),这样frf文件不需要在客户端存在.我倾向于采用这种方式,毕竟客户端越轻越好. 【相关文章:[原创] Questioning C# 】
1.仅序列化数据,由客户端接受到数据,并呈现报表,这种方式需要在客户端存储报表格式文件xxx.frf, 【扩展阅读:怎么样给下拉框加载背景色.. 】
序列化的过程很简单,其实了解了fr的几个重要方法之后,就很简单了,得到的成果如下: 【扩展信息:(CopyOnWrite)在多线程环境中】
简单打开一个表之后,将fr生成结果存成frp后,发现有64k大,这是不能忍受的,这还仅仅是2xx数据而已,不过这个问题解决也很简单,压缩之(只有4k),d7自带的就有一个压缩单元zlib,至于zlib的用法很简单,它提供stream与string 的压缩方式.这里就不说了,既然这个问题解决了,就剩序列化的代码,
在服务器端
frreport1.dataset := frdbdataset1; //设置frreport的dataset属性
frdbdataset1.dataset := adoquery1; //链接frdbdataset与dataset实例 adoquery1.open; //取得数据 frreport1.loadfromfile(´d:\1.frf´); //载入一个报表格式文件 frreport1.preparereport; //执行报表,得到数据,并不显示 ...
下一页 摘要:我观midas 刚看到dfw的达人王兄的《对borland 和 n-tier的牢骚》,发现今天的blog有内容可写了:p 非常同意现在的系分、高手都很热衷于赶时髦,或曰“浮躁”。我也见过非常非常之多人是在为了三层而三层,把简单的问题复杂化,把没必要做成三层的应用特地改成三层,结果得不偿失,事倍功半。 但对王兄后面的一些技术性分析,我觉得还是有值得商榷之处。 首先,李维所说的:dcom 的连接速度较socket connection 慢, 但是连接完成后, ......