示例#1
0
        private void btnConfigurar_Click(object sender, EventArgs e)
        {
            frmAcceso formA = new frmAcceso();

            var respuesta = formA.ShowDialog();

            if (respuesta == System.Windows.Forms.DialogResult.OK)
            {
                FrmConfiguracionAbarrotes form = new FrmConfiguracionAbarrotes();
                var resultado = form.ShowDialog();

                if (resultado == System.Windows.Forms.DialogResult.OK)
                {
                    this.FrmAbarrotes_Load(null, null);
                }
            }
        }
示例#2
0
        private void FrmAbarrotes_Load(object sender, EventArgs e)
        {
            try
            {
                // valida si ya tiene alguna clave guardada para el archivo
                string cveActual = Properties.Settings.Default.accesoConfig;

                if (string.IsNullOrEmpty(cveActual))
                {
                    string acceso = Modelos.Utilerias.Transform("p4ssw0rd");

                    Properties.Settings.Default.accesoConfig = acceso;
                    Properties.Settings.Default.Save();
                }


                string fileName       = "config.dat";
                string pathConfigFile = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + @"\SelecSuc\";

                // si no existe el directorio, lo crea
                bool exists = System.IO.Directory.Exists(pathConfigFile);

                if (!exists)
                {
                    System.IO.Directory.CreateDirectory(pathConfigFile);
                }

                // busca en el directorio si exite el archivo con el nombre dado
                var file = Directory.GetFiles(pathConfigFile, fileName, SearchOption.AllDirectories)
                           .FirstOrDefault();

                if (file == null)
                {
                    // no existe
                    // abrir el formulario para llenar la configuracion de conexion
                    FrmConfiguracionAbarrotes form = new FrmConfiguracionAbarrotes();
                    var resultado = form.ShowDialog();

                    if (resultado != System.Windows.Forms.DialogResult.OK)
                    {
                        this._defConfig = false;
                        throw new Exception("No se ha definido la configuración");
                    }
                }

                file = Directory.GetFiles(pathConfigFile, fileName, SearchOption.AllDirectories)
                       .FirstOrDefault();

                // si existe
                // obtener la cadena de conexion del archivo
                FEncrypt.Respuesta result = FEncrypt.EncryptDncrypt.DecryptFile(file, "milagros");

                if (result.status == FEncrypt.Estatus.ERROR)
                {
                    throw new Exception(result.error);
                }

                if (result.status == FEncrypt.Estatus.OK)
                {
                    string[] list = result.resultado.Split(new string[] { "||" }, StringSplitOptions.None);

                    string sucursal  = list[0].Substring(2);      // sucursal
                    string servidor  = list[1].Substring(2);      // servidor
                    string baseDatos = list[2].Substring(2);      // base de datos
                    string usuario   = list[3].Substring(2);      // usuario
                    string contra    = list[4].Substring(2);      // contraseña
                    string puerto    = list[5].Substring(2);      // puerto
                    string almacen   = list[7].Substring(2);      // almacen


                    ConfiguracionFB objConfig = new ConfiguracionFB();
                    objConfig.Database   = servidor + ":" + baseDatos;
                    objConfig.Usuario    = usuario;
                    objConfig.Contraseña = contra;
                    objConfig.Puerto     = Convert.ToInt16(puerto);

                    Properties.Settings.Default.Almacen = Convert.ToInt32(almacen);

                    Properties.Settings.Default.Configuracion = objConfig;

                    Properties.Settings.Default.Save();

                    bool   demo  = Convert.ToBoolean(list[8].Substring(2));          // demostrativo
                    string fecha = list[9].Substring(2);                             // fechaPrueba

                    if (demo)
                    {
                        // obtiene fecha microsip
                        FBDAL  FbDal       = new FBDAL();
                        string fechaActual = FbDal.getFecha();

                        // fecha tomada del microsip a partir de la primera vez que se configuro la aplicacion
                        DateTime dtD = DateTime.Parse(fecha).AddDays(7); // siete dias de prueba
                        DateTime dtA = DateTime.Parse(fechaActual);

                        // diferencia entre dias de la fecha actual y la tomada del microsip
                        int dif = (dtD - dtA).Days;

                        //if (dif >= 0)
                        if (dif < 0)
                        {
                            MessageBox.Show("La versión de prueba ha caducado", "Selectivas de Sucursal", MessageBoxButtons.OK, MessageBoxIcon.Information);

                            this.txbClave.Enabled    = false;
                            this.btnBuscar.Enabled   = false;
                            this.btnImprimir.Enabled = false;
                            this.btnLimpiar.Enabled  = false;

                            this.label7.Text = "CADUCADO";
                        }
                    }
                }

                this._defConfig = true;
            }
            catch (Exception Ex)
            {
                MessageBox.Show(Ex.Message, "Selectivas de Sucursal", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
        }