http://www.cnblogs.com/Jialiang/archive/2012/04/17/2453258.html http://blog.csdn.net/mscodesample/article/details/7468663