积累日常生活的点滴,开发过程的心得。

.Net Component组件把我给恶心着了

今天写一个派生于Component的组件,想在组件中判断是否是在设计时,如果是在运行时,则调用我的初始化代码,对DesignMode属性的判断是在构造函数中的,结果发现在构造函数中DesignMode永远是返回false,结果我的运行时代码在设计时被执行了 :-(。

于是想找一下Component组件的方法中是否有类似于Delphi的Loaded方法可以在组件加载后判断是否在DesignMode。结果发现,Component组件没有这样的方法,真是Shit :sick

建了一个部门开发知识库

发现还是MediaWiki比较好用,更加成熟,比FlexWiki强多了。CSDN和维基百科用的都是这个。不过页面汉化方面还有点小问题,折腾了我两小时。 Eye

新增了图像过滤器

测试图像

[image:58 (middle) hspace=10 vspace=10 border=10 width=100 height=100]

测试图片
哈巴狗

新增了笑脸过滤器

笑脸测试 Smiling

苦脸测试 Sad

新增加了引用和链接过滤器

[quote]引用测试[/quote]

链接测试: http://hubdog.csdn.net

隐藏页面内容

<div style="visibility:hidden ">test</div>

关于嵌入式脚本计数器

我朋友公司想要做一个在线广告,页面放在对方主机上,想要知道广告效果。对方的技术人员告诉他说不能提供raw log日志,告诉他可以用嵌入式脚本计数器,还说非常可靠,ip来源是通过document.referer来取的,作弊的话一下就能看出来。我朋友就问我计数可不可靠,我虽然主要做胖客户端,Web开发做的不多,但是欺骗一个脚本计数器实在是太轻松了,5分钟就在我本机上伪造了一个脚本计数器,访问我机器上随便一个页面,就跟访问了他的页面一样,想像一下,对方只要在他不知道的访问流量大的页面随便嵌入一个伪造的脚本就可以欺骗他了。所以,我还是建议他自己买个主机,把页面放在自己的网站上,这样才能保证不被别人忽悠。

又一个Bug

Drupal的搜索功能好像目前有问题,什么也搜索不到,有待解决

换了一个Trip Search,问题解决。

使用双缓冲改善控件绘制闪烁

在编写的控件的构造函数中加入下面语句即可。

//防止闪烁
this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
this.SetStyle(ControlStyles.UserPaint,true);
this.SetStyle(ControlStyles.Opaque, true);
this.SetStyle(ControlStyles.DoubleBuffer,true);

C#多线程调用VB COM+组件


前一阵子,开发的系统中一个用VB写的以单进程方式调用多个VB COM+组件程序由于发送速度过慢,报文要发10多个小时才能发完,需要进行优化,因为VB原生不支持多线程,所以我把它改成了C#通过后绑定多线程调用COM+组件。后绑定比较简单:但是一用多线程去调COM+,总有一部分调用会死锁在那里,半天都处理不完,后来查了一下帮助,发现必须将Thread的ApartmentState初始化为调用STA模式才行。修改后,程序性能提高了5倍。

同步内容