http://blog.csdn.net/lins/archive/2004/07/27/53696.aspx http://blog.csdn.net/lins/archive/2004/07/27/53697.aspx