/// <summary> /// QQ登录.如果登录成功,返回更新后的Person,如果失败,就返回null. /// <para>注意,该函数将显示登录对话框.</para> /// </summary> /// <param name="person"></param> /// <returns></returns> public Person Login(Person person) { try { FrmLogin login = new FrmLogin(person); if (login.ShowDialog() == System.Windows.Forms.DialogResult.OK) { string qq = login.WebQQ.MyQQNumber; if (!_QQMap.ContainsKey(qq)) { _QQMap.Add(qq, login.WebQQ); login.WebQQ.ReciveMessage += new EventHandler <QQMessageEventArgs>(WebQQ_ReciveMessage); } else { _QQMap[qq] = login.WebQQ; } //保存QQ用户消息. if (login.QQPerson.IsRecord) { _PersonList.AddOrUpdate(login.QQPerson); } GetFriendTask(qq); } return(login.QQPerson); } catch (Exception ex) { Loger.WriteLog(ex); } return(null); }