http://blog.csdn.net/bitfan/article/details/12779517http://blog.csdn.net/bitfan/article/details/12887007http://blog.csdn.net/bitfan/article/details/13001935http://blog.csdn.net/bitfan/article/details/14231561