http://www.cnblogs.com/zhangzh/archive/2009/07/29/1533726.html http://topic.csdn.net/t/20060925/10/5045204.html