/* * public static string GerarQRCode(CamadaDados.Faturamento.PDV.TRegistro_NFCe rNFCe) * { * if (rNFCe.St_contingencia) * { * System.Collections.Hashtable hs = new System.Collections.Hashtable(); * rNFCe.Chave_acesso = NFCe.GerarXML.TGerarXML.MontarChaveAcessoNfe(rNFCe, true).Trim(); * hs.Add("@P_CHAVE", rNFCe.Chave_acesso); * hs.Add("@P_EMPRESA", rNFCe.Cd_empresa); * hs.Add("@P_ID_NFCE", rNFCe.Id_nfcestr); * new CamadaDados.TDataQuery().executarSql("update tb_pdv_nfce set chave_acesso = @P_CHAVE, dt_alt = getdate() " + * "where cd_empresa = @P_EMPRESA and id_nfce = @P_ID_NFCE", hs); * } * string dest = string.Empty; * if(rNFCe.rCliente == null ? false : !string.IsNullOrEmpty((rNFCe.rCliente.Nr_cgc + rNFCe.rCliente.Nr_cpf).SoNumero())) * { * if (rNFCe.rCliente.Tp_pessoa.Trim().ToUpper().Equals("F") && !string.IsNullOrEmpty(rNFCe.rCliente.Nr_cpf.SoNumero())) * dest = rNFCe.rCliente.Nr_cpf.SoNumero(); * else if (rNFCe.rCliente.Tp_pessoa.Trim().ToUpper().Equals("J") && !string.IsNullOrEmpty(rNFCe.rCliente.Nr_cgc.SoNumero())) * dest = rNFCe.rCliente.Nr_cgc.SoNumero(); * } * else if (!string.IsNullOrEmpty(rNFCe.Nr_cgc_cpf.SoNumero()) && * (rNFCe.Nr_cgc_cpf.SoNumero().Length.Equals(14) || * rNFCe.Nr_cgc_cpf.SoNumero().Length.Equals(11))) * dest = rNFCe.Nr_cgc_cpf.SoNumero(); * string str = "chNFe=" + GerarXML.TGerarXML.MontarChaveAcessoNfe(rNFCe, true).Trim() + "&" + * "nVersao=100&" + * "tpAmb=" + rNFCe.rCfgNFCe.Tp_ambiente_nfce.Trim() + "&" + * (string.IsNullOrEmpty(dest) ? string.Empty : "cDest=" + dest.Trim() + "&") + * "dhEmi=" + rNFCe.Dt_emissao.Value.ToString("yyyy-MM-ddTHH:mm:sszzz").ConvertHexaDecimal().ToLower() + "&" + * "vNF=" + Convert.ToDecimal(string.Format("{0:N2}", rNFCe.Vl_cupom)).ToString(new System.Globalization.CultureInfo("en-US", true)) + "&" + * "vICMS=" + Convert.ToDecimal(string.Format("{0:N2}", rNFCe.lItem.Sum(v => v.Vl_icms))).ToString(new System.Globalization.CultureInfo("en-US", true)) + "&" + * "digVal=" + rNFCe.Digval.ConvertHexaDecimal().ToLower() + "&" + * "cIdToken=" + rNFCe.rCfgNFCe.Id_tokencsc.Trim() + rNFCe.rCfgNFCe.Nr_csc.Trim(); * string strQRCode = rNFCe.rCfgNFCe.Url_nfce.Trim() + * "chNFe=" + GerarXML.TGerarXML.MontarChaveAcessoNfe(rNFCe, true).Trim() + "&" + * "nVersao=100&" + * "tpAmb=" + rNFCe.rCfgNFCe.Tp_ambiente_nfce.Trim() + "&" + * (string.IsNullOrEmpty(dest) ? string.Empty : "cDest=" + dest.Trim() + "&") + * "dhEmi=" + rNFCe.Dt_emissao.Value.ToString("yyyy-MM-ddTHH:mm:sszzz").ConvertHexaDecimal().ToLower() + "&" + * "vNF=" + Convert.ToDecimal(string.Format("{0:N2}", rNFCe.Vl_cupom)).ToString(new System.Globalization.CultureInfo("en-US", true)) + "&" + * "vICMS=" + Convert.ToDecimal(string.Format("{0:N2}", rNFCe.lItem.Sum(v => v.Vl_icms))).ToString(new System.Globalization.CultureInfo("en-US", true)) + "&" + * "digVal=" + rNFCe.Digval.ConvertHexaDecimal().ToLower() + "&" + * "cIdToken=" + rNFCe.rCfgNFCe.Id_tokencsc.Trim() + "&" + * "cHashQRCode=" + Utils.Estruturas.SHA1(str).ToLower().Trim(); * //Gerar Imagem QR Code * Gma.QrCodeNet.Encoding.QrCode code = new Gma.QrCodeNet.Encoding.QrCode(); * Gma.QrCodeNet.Encoding.QrEncoder encoder = new Gma.QrCodeNet.Encoding.QrEncoder(Gma.QrCodeNet.Encoding.ErrorCorrectionLevel.M); * code = encoder.Encode(strQRCode); * Gma.QrCodeNet.Encoding.Windows.Render.GraphicsRenderer gRender = * new Gma.QrCodeNet.Encoding.Windows.Render.GraphicsRenderer(new Gma.QrCodeNet.Encoding.Windows.Render.FixedModuleSize(4, Gma.QrCodeNet.Encoding.Windows.Render.QuietZoneModules.Zero), * System.Drawing.Brushes.Black, System.Drawing.Brushes.White); * System.IO.MemoryStream ms = new System.IO.MemoryStream(); * gRender.WriteToStream(code.Matrix, System.Drawing.Imaging.ImageFormat.Jpeg, ms); * rNFCe.QR_Code = System.Drawing.Image.FromStream(ms); * return strQRCode; * } */ public static string GerarQRCode2(CamadaDados.Faturamento.PDV.TRegistro_NFCe rNFCe) { string strQRCode = string.Empty; if (rNFCe.St_contingencia) { System.Collections.Hashtable hs = new System.Collections.Hashtable(); rNFCe.Chave_acesso = NFCe.GerarXML.TGerarXML.MontarChaveAcessoNfe(rNFCe, true).Trim(); hs.Add("@P_CHAVE", rNFCe.Chave_acesso); hs.Add("@P_EMPRESA", rNFCe.Cd_empresa); hs.Add("@P_ID_NFCE", rNFCe.Id_nfcestr); new CamadaDados.TDataQuery().executarSql("update tb_pdv_nfce set chave_acesso = @P_CHAVE, dt_alt = getdate() " + "where cd_empresa = @P_EMPRESA and id_nfce = @P_ID_NFCE", hs); string str = GerarXML.TGerarXML.MontarChaveAcessoNfe(rNFCe, true).Trim() + "|" + "2|" + rNFCe.rCfgNFCe.Tp_ambiente_nfce.Trim() + "|" + rNFCe.Dt_emissao.Value.ToString("dd/MM/yyyy").Substring(0, 2) + "|" + Convert.ToDecimal(string.Format("{0:N2}", rNFCe.Vl_cupom)).ToString(new System.Globalization.CultureInfo("en-US", true)) + "|" + rNFCe.Digval.ConvertHexaDecimal() + "|" + int.Parse(rNFCe.rCfgNFCe.Id_tokencsc) + rNFCe.rCfgNFCe.Nr_csc.Trim(); strQRCode = rNFCe.rCfgNFCe.Url_nfce.Trim() + "?p=" + GerarXML.TGerarXML.MontarChaveAcessoNfe(rNFCe, true).Trim() + "|" + "2|" + rNFCe.rCfgNFCe.Tp_ambiente_nfce.Trim() + "|" + rNFCe.Dt_emissao.Value.ToString("dd/MM/yyyy").Substring(0, 2) + "|" + Convert.ToDecimal(string.Format("{0:N2}", rNFCe.Vl_cupom)).ToString(new System.Globalization.CultureInfo("en-US", true)) + "|" + rNFCe.Digval.ConvertHexaDecimal() + "|" + int.Parse(rNFCe.rCfgNFCe.Id_tokencsc) + "|" + Estruturas.SHA1(str).Trim(); } else { string str = GerarXML.TGerarXML.MontarChaveAcessoNfe(rNFCe, true).Trim() + "|" + "2|" + rNFCe.rCfgNFCe.Tp_ambiente_nfce.Trim() + "|" + int.Parse(rNFCe.rCfgNFCe.Id_tokencsc) + rNFCe.rCfgNFCe.Nr_csc.Trim(); strQRCode = rNFCe.rCfgNFCe.Url_nfce.Trim() + "?p=" + GerarXML.TGerarXML.MontarChaveAcessoNfe(rNFCe, true).Trim() + "|" + "2|" + //Versão do QRCode rNFCe.rCfgNFCe.Tp_ambiente_nfce.Trim() + "|" + int.Parse(rNFCe.rCfgNFCe.Id_tokencsc) + "|" + Estruturas.SHA1(str).Trim(); } //Gerar Imagem QR Code Gma.QrCodeNet.Encoding.QrCode code = new Gma.QrCodeNet.Encoding.QrCode(); Gma.QrCodeNet.Encoding.QrEncoder encoder = new Gma.QrCodeNet.Encoding.QrEncoder(Gma.QrCodeNet.Encoding.ErrorCorrectionLevel.M); code = encoder.Encode(strQRCode); Gma.QrCodeNet.Encoding.Windows.Render.GraphicsRenderer gRender = new Gma.QrCodeNet.Encoding.Windows.Render.GraphicsRenderer(new Gma.QrCodeNet.Encoding.Windows.Render.FixedModuleSize(4, Gma.QrCodeNet.Encoding.Windows.Render.QuietZoneModules.Zero), System.Drawing.Brushes.Black, System.Drawing.Brushes.White); System.IO.MemoryStream ms = new System.IO.MemoryStream(); gRender.WriteToStream(code.Matrix, System.Drawing.Imaging.ImageFormat.Jpeg, ms); rNFCe.QR_Code = System.Drawing.Image.FromStream(ms); return(strQRCode); }
private void BTN_OK_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(Login.Text)) { MessageBox.Show("Obrigatorio informar login.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); Login.Focus(); return; } if (string.IsNullOrEmpty(Senha.Text)) { MessageBox.Show("Obrigatorio informar senha.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); Senha.Focus(); return; } if (cbEmpresa.SelectedIndex < 0) { MessageBox.Show("Obrigatorio selecionar empresa para efetuar login.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); cbEmpresa.Focus(); return; } if (!System.IO.File.Exists("C:\\Aliance.NET\\ConectAliance.xml")) { MessageBox.Show("Arquivo de conexão não encontrado.\r\nConfigure novamente os dados de conexão.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } XElement xml = XElement.Load("C:\\Aliance.NET\\ConectAliance.xml"); //Verificar se existe elemento para o usuario IEnumerable <XElement> usuario = from x in xml.Elements("usuario") where x.Attribute("login").Value.Trim().ToUpper().Equals(Login.Text.Trim().ToUpper()) select x; if (usuario.Count() > 0) { foreach (XElement user in usuario) { user.Attribute("lembrarsenha").SetValue(st_lembrarsenha.Checked ? "S" : "N"); user.Attribute("senha").SetValue(Utils.Estruturas.CalcChaveAcesso(Senha.Text)); } IEnumerable <XElement> emp = from y in usuario.Elements("empresa") where y.Attribute("id").Value.Trim().ToUpper().Equals(cbEmpresa.Text.Trim().ToUpper()) select y; if (emp.Count() > 0) { foreach (XElement ep in emp) { ep.Attribute("qtd_conect").SetValue(decimal.Parse(ep.Attribute("qtd_conect").Value) + 1); Utils.Parametros.pubNM_Servidor = ep.Element("servidor").Value; Utils.Parametros.pubNM_BancoDados = ep.Element("banco").Value; xml.Save("C:\\Aliance.NET\\ConectAliance.xml"); } } else { MessageBox.Show("Não existe configuração para o login e empresa informado.\r\nConfigure os dados para conexão.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } } else { MessageBox.Show("Não existe configuração para o login.\r\nConfigure os dados de conexão.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } if (Login.Focused) { Login_Leave(sender, e); } Properties.Settings.Default.DT_SERVIDOR = CamadaDados.UtilData.Data_Servidor(); if (!Login.Text.Trim().ToUpper().Equals("MASTER") && !Login.Text.Trim().ToUpper().Equals("DESENV"))//Somente usuario MASTER e DESENV pode logar sem terminal e sem chave de acesso { //Buscar data atual do servidor DateTime dt_atualservidor = CamadaDados.UtilData.Data_Servidor(); if (dt_atualservidor.DayOfWeek != DayOfWeek.Saturday && dt_atualservidor.DayOfWeek != DayOfWeek.Sunday) { //Validar licenca do sistema CamadaDados.Diversos.TList_Licenca lic = new CamadaDados.Diversos.TCD_Licenca().Select(null, 1, string.Empty); //Se não existir licenca, gerar uma nova if (lic.Count.Equals(0) ? true : (lic[0].Hash_chave.Trim() != Estruturas.SHA1(lic[0].Dt_ativacaostr + lic[0].Nr_sequencial.ToString() + lic[0].Qt_diasvalidade.ToString() + lic[0].Chave_validade.Trim())) || //Licenca expirada lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade)).Date < dt_atualservidor || //Avisar 10 dias antes da Licença expirar (lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade)).Date <= dt_atualservidor && lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade + 10)).Date >= dt_atualservidor)) { try { if (lic.Count > 0) { if (dt_atualservidor < lic[0].Dt_ultimoacesso.Value) { MessageBox.Show("Data atual do servidor é menor que ultimo acesso " + lic[0].Dt_ultimoacessostr + ".\r\n" + "Não é permitido voltar a data do servidor.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); Environment.Exit(Environment.ExitCode); } } CamadaDados.Help.TChaveLic cLic = ServiceRest.DataService.CalcularLicenca( CamadaNegocio.Diversos.TCN_CadEmpresa.Busca(string.Empty, string.Empty, "A", null), CamadaNegocio.ConfigGer.TCN_CadParamGer.BuscaVlString("WS_SERVIDOR_BI", null)); if (cLic.Status.Trim().Equals("0") && lic.Count > 0 ? lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade)).Date < dt_atualservidor : true) { CamadaNegocio.Diversos.TCN_Licenca.Gravar( new CamadaDados.Diversos.TRegistro_Licenca() { Dt_ativacao = DateTime.Parse(cLic.Dt_licenca), Dt_ultimoacesso = dt_atualservidor, Qt_diasvalidade = Convert.ToDecimal(cLic.Qt_diasvalidade), Nr_sequencial = cLic.Nr_seqlic, Chave_validade = cLic.Chave, Hash_chave = Estruturas.SHA1(cLic.Dt_licenca.Trim() + cLic.Nr_seqlic.ToString() + cLic.Qt_diasvalidade.ToString() + cLic.Chave.Trim()) }, null); } else { //Verificar se Cliente tem acesso a tela de contas a pagar ou receber if (new CamadaDados.Diversos.TCD_CadAcesso().BuscarEscalar( new TpBusca[] { new TpBusca() { vNM_Campo = "a.login", vOperador = "=", vVL_Busca = "'" + Utils.Parametros.pubLogin.Trim() + "'" }, new TpBusca() { vNM_Campo = "a.ID_Menu", vOperador = "=", vVL_Busca = "'050700' or exists(select 1 from tb_div_usuario_x_grupos x " + "inner join tb_div_acesso y " + "on y.Login = x.Logingrp " + "where a.login = x.Loginusr " + "and y.id_menu = '050700' " + "and x.loginusr = '******') " //Codigo Menu Tela Consulta Contas Pagar/Receber } }, "1") != null && //Sempre aparecer antes do fim da licença se o usuario tiver acesso a tela de contas a pagar e a receber !cLic.Status.Equals("0") && lic.Count > 0 ? lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade + 10)).Date > dt_atualservidor.Date : false) { MessageBox.Show("Sua LICENÇA DE USO expira em " + lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade + 10)).Subtract(dt_atualservidor).Days.ToString() + " dias.\r\n" + "Obs.:Para evitar o bloqueio do sistema entre com contato com a TecnoAliance o mais breve possivel\r\n" + "e informe o código da Mensagem <" + cLic.Status.Trim() + ">.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); if (lic.Count.Equals(0)) { Environment.Exit(Environment.ExitCode); } if (lic[0].Hash_chave.Trim() != Estruturas.SHA1(lic[0].Dt_ativacaostr + lic[0].Nr_sequencial.ToString() + lic[0].Qt_diasvalidade.ToString() + lic[0].Chave_validade.Trim())) { Environment.Exit(Environment.ExitCode); } }//Aparecer somente quando nao gerar licença e quando licença estiver expirada passados os 10 dias de carência else if (!cLic.Status.Equals("0") && //Aparecer somente quando nao gerar licença e quando licença estiver expirada passados os 10 dias de carência lic.Count > 0 ? lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade + 10)).Date < dt_atualservidor.Date : true) { MessageBox.Show("Licença do Sistema Aliance.Net expirou!\r\n" + "Entre em contato com o suporte técnico do sistema.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); Environment.Exit(Environment.ExitCode); } } } catch { if (lic.Count > 0 ? lic[0].Dt_ativacao.Value.AddDays(Convert.ToDouble(lic[0].Qt_diasvalidade)).Date < dt_atualservidor.Date : true) { //Verificar se o usuario tem permissao para calcular chave manual if (CamadaNegocio.Diversos.TCN_Usuario_RegraEspecial.ValidaRegra(Utils.Parametros.pubLogin, "PERMITIR CALCULAR CHAVE ATIVACAO SISTEMA", null)) { using (TFCalcChaveAcesso fChave = new TFCalcChaveAcesso()) { if (fChave.ShowDialog() != DialogResult.OK) { MessageBox.Show("Obrigatorio informar licenca para acessar o sistema.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); Environment.Exit(Environment.ExitCode); } } } else { MessageBox.Show("Licença do Sistema Aliance.Net expirou!\r\nUsuário não possui permissão para gravar licença manual.\r\n" + "Entre em contato com o suporte técnico do sistema.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); Environment.Exit(Environment.ExitCode); } } } } } //Validar terminal try { Cd_terminal = CamadaNegocio.Diversos.TCN_CadTerminal.ValidaTerminal(Login.Text); } catch (Exception ex) { MessageBox.Show(ex.Message.Trim(), "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } } else { object obj_terminal = new CamadaDados.Diversos.TCD_CadTerminal().BuscarEscalar( new TpBusca[] { new TpBusca() { vNM_Campo = string.Empty, vOperador = "exists", vVL_Busca = "(select 1 from tb_div_usuario_x_terminal x " + "where x.cd_terminal = a.cd_terminal " + "and x.login = '******')" } }, "a.cd_terminal"); if (obj_terminal != null) { Cd_terminal = obj_terminal.ToString(); } } if (CamadaNegocio.Diversos.TCN_CadUsuario.ExpirarSenha(Login.Text)) { MessageBox.Show("Sua senha expirou.\r\nO sistema ira exigir a troca da mesma.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); TFAlterarSenha fAlterarSenha = new TFAlterarSenha(); try { fAlterarSenha.vLogin = Login.Text; if (fAlterarSenha.ShowDialog() == DialogResult.OK) { Senha.Text = fAlterarSenha.vSenhaAtual; DialogResult = DialogResult.OK; } else { DialogResult = DialogResult.Cancel; } } finally { fAlterarSenha.Dispose(); } } else { DialogResult = DialogResult.OK; } if (CamadaNegocio.Diversos.TCN_CadUsuario.verificarAlterarSenha(Login.Text)) { TFAlterarSenha fAlterarSenha = new TFAlterarSenha(); try { fAlterarSenha.vLogin = Login.Text; if (fAlterarSenha.ShowDialog() == DialogResult.OK) { Senha.Text = fAlterarSenha.vSenhaAtual; DialogResult = DialogResult.OK; TpBusca[] filtro = new TpBusca[1]; filtro[0].vNM_Campo = "login"; filtro[0].vOperador = "="; filtro[0].vVL_Busca = "'" + Login.Text.Trim() + "'"; CamadaDados.Diversos.TList_CadUsuario user = new CamadaDados.Diversos.TCD_CadUsuario().Select(filtro, 1, string.Empty); if (user.Count > 0) { user[0].St_AlterarSenha = "N"; CamadaNegocio.Diversos.TCN_CadUsuario.Gravar(user[0], null); } } else { DialogResult = DialogResult.Cancel; } } finally { fAlterarSenha.Dispose(); } } }
private void afterGrava() { if (string.IsNullOrEmpty(NR_CGC.Text.SoNumero())) { MessageBox.Show("Obrigatório informar CNPJ.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); NR_CGC.Focus(); return; } if (string.IsNullOrEmpty(dt_ativacao.Text.SoNumero())) { MessageBox.Show("Obrigatorio informar data ativação.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); dt_ativacao.Focus(); return; } if (string.IsNullOrEmpty(nr_sequencial.Text)) { MessageBox.Show("Obrigatório informar sequencial", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); nr_sequencial.Focus(); return; } if (string.IsNullOrEmpty(qt_diasvalidade.Text)) { MessageBox.Show("Obrigatorio informar quantidade de dias validade.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); qt_diasvalidade.Focus(); return; } if (!Estruturas.ValidarChaveAcesso(NR_CGC.Text, Convert.ToDouble(nr_sequencial.Text), DateTime.Parse(dt_ativacao.Text), Convert.ToDouble(qt_diasvalidade.Text), chave1.Text.Trim() + chave2.Text.Trim() + chave3.Text.Trim() + chave4.Text.Trim())) { MessageBox.Show("Chave de acesso invalida.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information); chave1.Focus(); return; } try { //Gravar licenca CamadaNegocio.Diversos.TCN_Licenca.Gravar( new CamadaDados.Diversos.TRegistro_Licenca() { Dt_ativacaostr = dt_ativacao.Text, Dt_ultimoacessostr = dt_ativacao.Text, Qt_diasvalidade = decimal.Parse(qt_diasvalidade.Text), Chave_validade = chave1.Text.Trim() + chave2.Text.Trim() + chave3.Text.Trim() + chave4.Text.Trim(), Nr_sequencial = Convert.ToInt32(nr_sequencial.Text), Hash_chave = Estruturas.SHA1(dt_ativacao.Text.Trim() + decimal.Parse(nr_sequencial.Text).ToString() + Convert.ToInt32(qt_diasvalidade.Text).ToString() + chave1.Text.Trim() + chave2.Text.Trim() + chave3.Text.Trim() + chave4.Text.Trim()) }, null); DialogResult = DialogResult.OK; } catch (Exception ex) { MessageBox.Show("Erro gravar licença: " + ex.Message.Trim(), "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); DialogResult = DialogResult.Cancel; } }