http://www.cnblogs.com/jillzhang/category/121346.html http://www.cnblogs.com/artech/archive/2007/02/28/659331.html