http://blog.csdn.net/comlc/archive/2009/05/08/4162095.aspx http://blog.csdn.net/feifei1018/archive/2006/04/21/672254.aspx