http://blog.csdn.net/sfdev/archive/2009/01/13/3770706.aspx
http://blog.csdn.net/sfdev/archive/2009/01/13/3771134.aspx
http://blog.csdn.net/sfdev/archive/2009/01/13/3771441.aspx
http://blog.csdn.net/sfdev/archive/2009/01/14/3772605.aspx
http://blog.csdn.net/sfdev/archive/2009/01/13/3771134.aspx
http://blog.csdn.net/sfdev/archive/2009/01/13/3771441.aspx
http://blog.csdn.net/sfdev/archive/2009/01/14/3772605.aspx