检验报告查询微信接口的开发
04月18号
检验报告查询微信接口的开发

那天登陆微信的公众账号平台,发现微信更新了9大接口的功能,其中就包括了客服接口。什么是客服接口呢,我们可以理解为延迟发送消息,就是说用户发送了一条消息给你,你可以不用立即回复,在48小时内都可以发送消息给用户。

那么,这个技术就为报告查询提供了一个很好的延迟解决方案,为什么这么说,当用户提交一个报告查询请求的时候,由于检验服务器多数在局域网的内网,因此,没有办法直接查询到结果,你只能把报告查询请求记录下来,然后通过内外网的网闸进行通讯,查询到结果后,再发送给用户。

查看全文
危急值报告系统之心跳包的设计
04月09号
危急值报告系统之心跳包的设计

还记得你刚接触Sokcet编程的时候,思考,腾讯QQ是怎么保持在线的么?

程序员!你的第一个聊天室程序有没有实现过这个问题啊?

吵吵当初无意错过,但是,当我折腾危急值报告系统的时候,我发现又碰上了这个问题!

废话不讲,看看解决思路吧:

查看全文
流氓的百度杀毒
03月06号
流氓的百度杀毒

360原来是做流氓软件的,结果后来自己做个360卫士来杀流氓软件,等到360安全卫士用的正是过瘾的时候,才发现,原来360卫士也是个流氓… ..

吵吵早些年就已经不用360了,不为别的,就是太吵太烦。从这点来看,微信能够做大,能够抵抗住那么多的噪音,实属不易。

后来用瑞星,天天提示卖红酒。挑中了百度杀毒,终于安静了。

查看全文
c# 轻量ORM框架开发之反射与动态编译
09月13号
c# 轻量ORM框架开发之反射与动态编译

对象关系映射,靠纯手打,是个超级繁琐又类的苦力活,即便它能给你再高的运行效率,但是也会损失开发效率。

c#在netframework中其实已经提供了ORM框架了,叫做entity framework,这个框架其实已经做的蛮好的了,但是框架实在是太重,重到写出来的代码在配置不那么好的电脑上跑起来都卡顿。

因此我们决定自己写这么一个框架,一来重在轻量;二来,就是想探探路,看看ORM框架到底是怎么做出来的。

当然,让我自己凭空造楼是做不到的,但是我们可以借鉴,尤其是在互联网这么发达的时代,去github看看别的的开源代码就OK了。

查看全文
南方医科大学校园网网关认证客户端程序v2.0
07月02号
南方医科大学校园网网关认证客户端程序v2.0

在使用网关认证的客户端程序后,终于再也不用一会儿就去输入那烦人的认证页面了,程序每隔30秒就去获取一下百度的页面,如果发现百度页面也获取不到,就重新发起一次认证,保证网络一直畅通无阻。

当然,你说,如果恰好百度瘫痪了,你这判断不就失灵了?吵吵说,建议中国政府的伟大的长城防火墙屏蔽百度这种邪恶的搜索引擎,好吧,你懂的。

吵吵今天又拿这个客户端程序说事,不是来黑百度的,而是在应用的过程中又发现了一些问题。

查看全文
c#自定义事件
06月21号
c#自定义事件

c#的serialPort控件有个DataReceived事件,用来响应串口接收到发送来的数据。在做LIS接口的时候,本着”高内聚、低耦合“的原则,我继承了这个控件,并且重新定义了两个事件ResultReceived和QueryReceived,用来响应LIS接口收到结果和收到条码请求两个事件。为了实现上述的功能,就需要了解自定义事件怎么做?

为了了解这个问题,我们追踪一下源代码,发现DataReceived事件代码如下:

查看全文
c#的串口通讯
06月14号
c#的串口通讯

老实讲,自从用上了c#之后,就再也没有心思去折腾delphi了,从开发速度来讲,c#要用的顺手的多,最起码两点:不用在开头写函数声明,局部变量也不用在函数头声明。抛弃这些东西,强大的LIST链表用的是相当的爽。

前些年觉得,技术进步太快,你只需要专注你自己的东西就ok了,现在看来倒是未必了。开发语言是一种工具,人家用的是大炮了,你还在用手枪,迟早就是躲不开被淘汰的命运。

抛弃存量,寻找增量,是在互联网时代存活下去的定律。编程语言在进化,人也在进化。

查看全文
坑爹的OracleClient
06月07号
坑爹的OracleClient

今天研究了一天的Oracle数据库,尝试着如何去用c#读写Oracle数据库,没想到的是,原本以为很简单的东西,研究了整整一天。

前几天一直在和金域和LIS的开发商谈金域接口的事情,难点在于LIS开发商做这个接口要支付额外的费用,将这个事情提交医院,因为医院明年考虑整体换成东软的系统,不愿意再投入。这个时候金域跑出来了,他们愿意出这个钱,前提就是LIS开发商和他们的客户有足够多的交集。

查看全文
南方医科大学校园网网页认证客户端
06月02号
南方医科大学校园网网页认证客户端

上次金域的工程师来我们医院,发现我们的校园网一段时间不登陆就会断线,于是他告诉我开一个窗口,一直PING百度就好了。他是想如果一直有数据交换,我们的校园网就不会断。后来经实验证实,他的想法还是太美好,ping绝对是不行的,网关应该是虑过了ICMP协议的。

老版的网页认证已经被我集中到了“吵吵登陆器”中,当然,这也是N年前的事情了。但是老是断一下的网络确实也很讨人厌,因此,我还是决定再写一个客户端来做网页登陆验证。

老实讲,新版的认证已经比老版的强大到哪里去了,你看他那一堆隐藏的字段,就让你没有写代码的欲望了,好在很多时候都是看着吓人罢了,实际上实验起来,很多东西还是都没有用的。

查看全文
c# Socket通信数据包构造的问题
05月31号
c# Socket通信数据包构造的问题

前文讲到我用tcp通信来做金域的接口代理,做好了之后,却发现了一个问题,对于TCP通信来说,默认的数据包长度是1492,因此,当我发送的数据大于1492的时候,问题就出现了,数据被拆分了,要不就是没法判断数据都接收完了,要不就是粘包了。

1、如何判断数据是否接收完?

通常,我们通过socket来接收数据是使用一个循环去读取的,读到了数据就加入到缓存的数据中去。但是,如果仅仅是循环的话,你怎么知道什么时候数据就接收完了呢?

查看全文