void Channels_BeforeLogin(object sender, BeforeLoginEventArgs e) { LibraryChannel channel = (LibraryChannel)sender; dp2Server server = this.MainForm.Servers[channel.Url]; if (server == null) { e.ErrorInfo = "没有找到 URL 为 " + channel.Url + " 的服务器对象"; e.Failed = true; e.Cancel = true; return; } if (e.FirstTry == true) { e.UserName = server.DefaultUserName; e.Password = server.DefaultPassword; e.Parameters = "location=dp2Catalog,type=worker"; /* * e.IsReader = false; * e.Location = "dp2Catalog"; * */ // 2014/9/13 e.Parameters += ",mac=" + StringUtil.MakePathList(SerialCodeForm.GetMacAddress(), "|"); #if SN // 从序列号中获得 expire= 参数值 string strExpire = this.MainForm.GetExpireParam(); if (string.IsNullOrEmpty(strExpire) == false) { e.Parameters += ",expire=" + strExpire; } #endif e.Parameters += ",client=dp2catalog|" + Program.ClientVersion; if (String.IsNullOrEmpty(e.UserName) == false) { return; // 立即返回, 以便作第一次 不出现 对话框的自动登录 } } // IWin32Window owner = this; ServerDlg dlg = SetDefaultAccount( e.LibraryServerUrl, null, e.ErrorInfo, owner); if (dlg == null) { e.Cancel = true; return; } e.UserName = dlg.UserName; e.Password = dlg.Password; e.SavePasswordShort = false; e.Parameters = "location=dp2Catalog,type=worker"; e.Parameters += ",client=dp2catalog|" + Program.ClientVersion; /* * e.IsReader = false; * e.Location = "dp2Catalog"; * */ e.SavePasswordLong = true; e.LibraryServerUrl = dlg.ServerUrl; }