Пример #1
0
        public string loadLicence()
        {
            string retorno = String.Empty;
            string install = string.Empty;

            try
            {
                install = new clsBaseLicencia().getRutaInstalacionLicencia();
                string currentDirectory = Environment.CurrentDirectory;
                string otro             = Directory.GetCurrentDirectory();
                string location         = install + "Entity.dll";
                //clsBaseLog.cs_pxRegistarAdd(location);
                if (File.Exists(location))
                {
                    StreamReader sr0 = new StreamReader(location);
                    retorno = sr0.ReadToEnd().Trim();
                    sr0.Close();
                }
            }
            catch (Exception ex)
            {
                clsBaseLog.cs_pxRegistarAdd("LoadRegistroL" + ex.ToString());
            }
            return(retorno);
        }
Пример #2
0
        public string[] getDatosLicencia()
        {
            try
            {
                string       directory     = Environment.CurrentDirectory;
                string       directory2    = Directory.GetCurrentDirectory();
                string       install       = new clsBaseLicencia().getRutaInstalacionLicencia();
                StreamReader sr            = new StreamReader(install + "lcl.txt", System.Text.Encoding.Default);
                string       textoPeticion = sr.ReadToEnd();
                sr.Close();

                string[] retorno      = new string[9];
                string   licencia     = new clsBaseLicencia().loadLicence();
                string   lic_base     = new clsBaseLicencia().fx_DecodificarBase64(licencia);
                char[]   split        = new char[] { '[', ']' };
                string   licencia_aes = new clsBaseAES().decodificar(lic_base);
                string[] decodificado = licencia_aes.Split(split, StringSplitOptions.RemoveEmptyEntries);

                string cTiempo        = string.Empty;
                string cCodActivacion = new clsBaseLicencia().fx_DecodificarBase64(decodificado[0].Trim());
                string cCodProducto   = new clsBaseLicencia().fx_DecodificarBase64(decodificado[1].Trim());
                string cNroLicencias  = new clsBaseLicencia().fx_DecodificarBase64(decodificado[2].Trim());
                string cVersion       = new clsBaseLicencia().fx_DecodificarBase64(decodificado[3].Trim());
                string cPeticion      = new clsBaseLicencia().fx_DecodificarBase64(decodificado[4].Trim());
                if (decodificado.Length > 5)
                {
                    cTiempo = new clsBaseLicencia().fx_DecodificarBase64(decodificado[5].Trim());
                }
                string app_tipolicencia = cCodProducto.Substring(9, 2);
                string app_codproyecto  = cCodProducto.Substring(0, 3);
                string cCodModulo       = cCodProducto.Substring(4, 4);
                retorno[0] = cCodActivacion;
                retorno[1] = cCodProducto;
                retorno[2] = cNroLicencias;
                retorno[3] = cVersion;
                retorno[4] = cPeticion;
                retorno[5] = cTiempo;
                retorno[6] = app_tipolicencia;
                retorno[7] = app_codproyecto;
                retorno[8] = cCodModulo;
                if (textoPeticion != cPeticion)
                {
                    clsBaseLog.cs_pxRegistarAdd("gdatl -> Peticion de la licencia diff Peticion Maquina.");
                    retorno = null;
                }
                return(retorno);
            }
            catch (Exception ex)
            {
                clsBaseLog.cs_pxRegistarAdd("gdatl -> " + ex.ToString());
                return(null);
            }
        }
Пример #3
0
        public bool licenceExists()
        {
            bool   retorno  = false;
            string licencia = new clsBaseLicencia().loadLicence();
            bool   flag     = licencia.Equals(string.Empty);

            if (flag)
            {
                retorno = false;
            }
            else
            {
                retorno = true;
            }
            return(retorno);
        }
Пример #4
0
        public bool licenceActive(string fecha, string version)
        {
            /*Se Hace uso del Modulo para activar cierta Seccion del Codigo, Valido para la Licencia*/
            Licencia = new ModVers();
            if (Licencia.Active_LIQUY() == true)
            {
                //clsBaseLog.cs_pxRegistarAdd("licenciaactive");
                bool   active = false;
                string text2  = new clsBaseLicencia().loadLicence();
                /*obtener si esta vacio o no*/
                bool flag3 = text2.Equals(string.Empty);
                if (!flag3)
                {
                    /*existe info, obtener fecha y comparar si esta activa o no*/
                    try
                    {
                        clsBaseLog.cs_pxRegistarAdd("getdatoslicencia");
                        string[] datosLicencia = getDatosLicencia();
                        if (datosLicencia != null)
                        {
                            clsBaseLog.cs_pxRegistarAdd("licencia active " + version.Substring(0, 5) + " " + datosLicencia[3].ToString().Substring(0, 5));
                            /*comprobar version de la licencia.*/
                            if (datosLicencia[3].ToString().Substring(0, 5) == version.Substring(0, 5))
                            {
                                /*es la misma version comprobar la fecha*/

                                DateTime fechaComprobante = DateTime.ParseExact(fecha, "yyyy-MM-dd", null);
                                clsBaseLog.cs_pxRegistarAdd(fecha + " " + datosLicencia[5]);
                                if (datosLicencia[5] != "")
                                {
                                    string cadenafecha  = datosLicencia[5];
                                    int    mesLicencia  = Convert.ToInt16(cadenafecha.Substring(0, 2));
                                    int    anioLicencia = Convert.ToInt16(cadenafecha.Substring(2, 4));
                                    int    mesHoy       = Convert.ToInt16(fechaComprobante.ToString("MM"));
                                    int    anioHoy      = Convert.ToInt16(fechaComprobante.ToString("yyyy"));
                                    if (anioHoy <= anioLicencia)
                                    {
                                        if (anioHoy == anioLicencia)
                                        {/*si es el mismo año comparar los meses*/
                                            if (mesHoy <= mesLicencia)
                                            {
                                                active = true;
                                            }
                                            else
                                            {
                                                active = false;
                                            }
                                        }
                                        else
                                        {/*el año actual es menor que el año de la licencia*/
                                            active = true;
                                        }
                                    }
                                    else
                                    {
                                        active = false;
                                    }
                                }
                                else
                                {
                                    /*permanente*/
                                    active = true;
                                }
                            }
                            else
                            {
                                active = false;
                            }
                        }
                        else
                        {
                            active = false;
                        }
                    }
                    catch (Exception ex)
                    {
                        clsBaseLog.cs_pxRegistarAdd("liact->" + ex.ToString());
                    }
                }
                return(active);
            }
            else
            {
                return(true);
            }
        }
Пример #5
0
        public string getFechaVencimiento()
        {
            string fechaVencimiento = string.Empty;

            try
            {
                string text2 = new clsBaseLicencia().loadLicence();
                if (text2.Equals(string.Empty))
                {
                    fechaVencimiento = "La licencia no esta activada";
                }
                else
                {
                    string[] datosLicencia = getDatosLicencia();
                    if (datosLicencia != null)
                    {
                        //descencriptar y obtener fechaa
                        if (datosLicencia[5] != "")
                        {
                            string cadenafecha  = datosLicencia[5];
                            int    mesLicencia  = Convert.ToInt16(cadenafecha.Substring(0, 2));
                            int    anioLicencia = Convert.ToInt16(cadenafecha.Substring(2, 4));

                            DateTime fechaHoy        = DateTime.Now.Date;
                            int      mesHoy          = Convert.ToInt16(fechaHoy.ToString("MM"));
                            int      anioHoy         = Convert.ToInt16(fechaHoy.ToString("yyyy"));
                            var      firstDayOfMonth = new DateTime(anioLicencia, mesLicencia, 1);
                            DateTime fechaLicencia   = firstDayOfMonth.AddMonths(1).AddDays(-1);

                            if (anioHoy <= anioLicencia)
                            {
                                if (anioHoy == anioLicencia)
                                {//si es el mismo año comparar los meses
                                    if (mesHoy <= mesLicencia)
                                    {
                                        if (mesHoy == mesLicencia)
                                        {
                                            TimeSpan ts = fechaLicencia - fechaHoy;

                                            int dias = ts.Days + 1;

                                            if (dias <= 0)
                                            {
                                                fechaVencimiento = "Su licencia ha vencido el dia " + fechaLicencia.ToString("dd/MM/yyyy");
                                            }
                                            else
                                            {
                                                if (dias == 1)
                                                {
                                                    fechaVencimiento = "Su licencia vence hoy";
                                                }
                                                else if (dias == 2)
                                                {
                                                    fechaVencimiento = "Su licencia vence mañana";
                                                }
                                                else
                                                {
                                                    dias             = dias - 1;
                                                    fechaVencimiento = "Su licencia vence en " + dias.ToString() + " dias";
                                                }
                                            }
                                        }
                                        else
                                        {
                                            fechaVencimiento = "Su licencia vence en " + firstDayOfMonth.ToString("MMMM", CultureInfo.CreateSpecificCulture("es-ES")) + " de " + anioLicencia + "";
                                        }
                                    }
                                    else
                                    {
                                        fechaVencimiento = "Licencia vencida en " + firstDayOfMonth.ToString("MMMM", CultureInfo.CreateSpecificCulture("es-ES")) + " de " + anioLicencia + "";
                                    }
                                }
                                else
                                {
                                    //el año actual es menor que el año licencia
                                    fechaVencimiento = "Su licencia vence en " + firstDayOfMonth.ToString("MMMM", CultureInfo.CreateSpecificCulture("es-ES")) + " de " + anioLicencia + "";
                                }
                            }
                            else
                            {
                                fechaVencimiento = "Licencia vencida en " + firstDayOfMonth.ToString("MMMM", CultureInfo.CreateSpecificCulture("es-ES")) + " de " + anioLicencia + "";
                            }
                            // DateTime fechaLicencia = DateTime.ParseExact(fechaVencimiento, "yyyy-MM-dd", null);
                        }
                        else
                        {
                            fechaVencimiento = "Licencia permanente";
                        }
                    }
                    else
                    {
                        fechaVencimiento = "La licencia no se pudo cargar correctamente";
                    }
                }
            }
            catch
            {
                fechaVencimiento = "Licencia caducada.Contacte a su proveedor.";
            }
            return(fechaVencimiento);
        }