예제 #1
0
 private void btnSalveazaConexiune_Click(object sender, EventArgs e)
 {
     if (CUtile.ConexiuneBDDValida(this.txtServerManual.Text.Trim(), this.txtNumeInstantaSQL.Text.Trim(),
                                   this.txtUserSQL.Text.Trim(), this.txtParolaSQL.Text.Trim()))
     {
         CUtile.seteazaConexiuneBDD(this.txtServerManual.Text.Trim(), this.txtNumeInstantaSQL.Text.Trim(),
                                    this.txtUserSQL.Text.Trim(), this.txtParolaSQL.Text.Trim(), this.txtNumeBDD.Text.Trim());
         this.Close();
     }
     else
     {
         MessageBox.Show(BMultiLingv.GetById(BMultiLingv.EnumDictionar.informatiileIntroduseNuSuntCorecte, 0), BMultiLingv.GetById(BMultiLingv.EnumDictionar.conexiuneLaBazaDeDate, 0), MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
예제 #2
0
 private void frmActualizeaza_FormClosing(object sender, FormClosingEventArgs e)
 {
     if (this.lActualizareInCurs)
     {
         MessageBox.Show(BMultiLingv.GetById(BMultiLingv.EnumDictionar.vaRugamSaAsteptatiFinalizareaActualizarii, this.lTipAplicatie), BMultiLingv.GetById(BMultiLingv.EnumDictionar.actualizareInCurs, this.lTipAplicatie), MessageBoxButtons.OK, MessageBoxIcon.Information);
         e.Cancel = true;
     }
 }
예제 #3
0
        private void bwServer_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            switch (this.lOperatie)
            {
            case EnumOperatie.Modificari:

                if (!this.lExistaUpgradeDisponibil)
                {
                    //Doar prima oara afisam asta
                    if (!this.lActualizareEfectuata)
                    {
                        MessageBox.Show(BMultiLingv.GetById(BMultiLingv.EnumDictionar.nuExistaActualizariDisponibile, this.lTipAplicatie), getDenumireAplicatie(), MessageBoxButtons.OK, MessageBoxIcon.Information);
                        this.Close();
                    }
                    return;
                }

                this.txtModificari.Text = this.lModificariDisponibile;

                this.lblActiune.Visible         = false;
                this.pbStareActualizare.Visible = false;

                this.panelStart.Visible              = false;
                this.panelDetalii.Visible            = true;
                this.btnLanseazaActualizarea.Visible = this.lExistaUpgradeDisponibil;
                this.btnLanseazaActualizarea.Focus();

                //Daca upgrade-ul trebuia facut atunci il facem
                if (!this.lPermiteLansareaManuala)
                {
                    lanseazaActualizarea();
                }
                break;

            case EnumOperatie.Actualizeaza:
                if (this.lAreDreptUpgrade)
                {
                    this.lblActiune.Text = BMultiLingv.GetById(BMultiLingv.EnumDictionar.vaMultumim, this.lTipAplicatie);
                    this.btnLanseazaActualizarea.Visible = false;
                    this.pbStareActualizare.Visible      = false;

                    this.lActualizareInCurs = false;

                    //Daca acest upgrade trebuia facut atunci deschidem automat aplicatia (scutim un click)
                    if (!this.lPermiteLansareaManuala)
                    {
                        lanseazaIStoma();
                    }
                    else
                    {
                        verificaDacaMaiExistaUpgradeuri();
                    }
                }
                else
                {
                    MessageBox.Show(string.Concat(BMultiLingv.GetById(BMultiLingv.EnumDictionar.nuAtiAchizitionatAcesteActualizari, this.lTipAplicatie), "\r\n\r\n",
                                                  BMultiLingv.GetById(BMultiLingv.EnumDictionar.contactatiUnReprIDavaSolutionsPtMaiMDetalii, this.lTipAplicatie)),
                                    BMultiLingv.GetById(BMultiLingv.EnumDictionar.actualizarileNuSuntDisponibile, this.lTipAplicatie),
                                    MessageBoxButtons.OK, MessageBoxIcon.Information);
                }

                this.btnFinalizeaza.Visible = true;
                this.btnFinalizeaza.Focus();

                this.lActualizareInCurs = false;
                break;
            }
        }
예제 #4
0
        private void actualizeazaAplicatia()
        {
            this.lActiune = BMultiLingv.GetById(BMultiLingv.EnumDictionar.recuperareaInfoReferitoaeLaVersiuneaActuala, this.lTipAplicatie);// "Recuperarea informațiilor referitoare la versiunea actuală";
            this.bwServer.ReportProgress(10);

            //Descarcam elementele necesare
            this.utilizator = CUtile.GetUtilizatorISTOMA();
            this.masina     = new BMasina();

            string idMasina = masina.Id;

            this.lActiune = BMultiLingv.GetById(BMultiLingv.EnumDictionar.conectareLaServer, this.lTipAplicatie);// "Conectare la server";
            this.bwServer.ReportProgress(20);

            Actualizari.ActualizariSoapClient act = new Actualizari.ActualizariSoapClient();
            byte[] arhiva   = act.GetVersiuneaUrmatoare(this.utilizator.Item1, this.utilizator.Item2, CUtile.getCheieLicenta(), idMasina);
            string versiune = string.Empty;

            this.lAreDreptUpgrade = arhiva != null;

            if (this.lAreDreptUpgrade)
            {
                this.lActiune = BMultiLingv.GetById(BMultiLingv.EnumDictionar.recuperareaNoilorFunctionalitati, this.lTipAplicatie);//"Recuperarea noilor funcționalități";
                this.bwServer.ReportProgress(40);

                string folderActual = CUtile.GetLocatieAplicatie();

                //Incarcam arhiva in memorie
                using (MemoryStream arhivaMemorie = new MemoryStream(arhiva))
                {
                    List <Ionic.Zip.ZipEntry> listaSQL     = new List <Ionic.Zip.ZipEntry>();
                    List <Ionic.Zip.ZipEntry> listaFisiere = new List <Ionic.Zip.ZipEntry>();
                    bool upgradeML = false;
                    //Cream arhiva
                    using (Ionic.Zip.ZipFile fisierZip = Ionic.Zip.ZipFile.Read(arhivaMemorie))
                    {
                        foreach (Ionic.Zip.ZipEntry intrare in fisierZip)
                        {
                            if (intrare.FileName.EndsWith(".sql"))
                            {
                                //Fisier de executat SQL
                                listaSQL.Add(intrare);
                            }
                            else
                            {
                                //Fisier de copiat
                                if (intrare.FileName.Contains("upgradeMultiLingv"))
                                {
                                    upgradeML = true;
                                }
                                else
                                {
                                    if (intrare.FileName.Contains(".vrs"))
                                    {
                                        versiune = intrare.FileName.Substring(0, intrare.FileName.IndexOf(".vrs"));
                                    }
                                    else
                                    {
                                        listaFisiere.Add(intrare);
                                    }
                                }
                            }
                        }
                    }

                    if (!string.IsNullOrEmpty(versiune))
                    {
                        string versiuneBDDExistenta = CUtile.getUltimaVersiuneBDD();

                        if (string.IsNullOrEmpty(versiuneBDDExistenta))
                        {
                            versiuneBDDExistenta = "1";
                        }

                        if (!versiune.Equals(versiuneBDDExistenta) && Convert.ToInt32(versiune) > Convert.ToInt32(versiuneBDDExistenta))
                        {
                            this.lActiune = BMultiLingv.GetById(BMultiLingv.EnumDictionar.modificareaStructuriiDeDate, this.lTipAplicatie);//"Modificarea structurii de date";
                            this.bwServer.ReportProgress(80);

                            foreach (Ionic.Zip.ZipEntry executaSQL in listaSQL)
                            {
                                //Executam scripturile
                                System.IO.StreamReader reader = new StreamReader(executaSQL.OpenReader());

                                CUtile.executaFisierSQL(reader.ReadToEnd(), "-$$$-");
                            }

                            //Facem update la versiunea BDD
                            CUtile.UpdateVersiuneBDD(versiune);

                            if (upgradeML)
                            {
                                //rescriem tabela de multi lingv
                                byte[] fisierMultiLingv = null;

                                iStoma.VerificareSoapClient servVerif = new iStoma.VerificareSoapClient();
                                fisierMultiLingv = servVerif.IncarcaMultiLingv(this.utilizator.Item1, this.utilizator.Item2);

                                CUtile.updateMultiLingv(fisierMultiLingv);
                            }
                        }
                    }

                    this.lActiune = BMultiLingv.GetById(BMultiLingv.EnumDictionar.modificareaLibrariilorIStoma, this.lTipAplicatie);//"Modificarea librariilor iStoma";
                    this.bwServer.ReportProgress(100);

                    foreach (Ionic.Zip.ZipEntry fisierCopiere in listaFisiere)
                    {
                        //Inlocuim fisierele
                        //Stergem fisierele care exista deja
                        if (File.Exists(Path.Combine(folderActual, fisierCopiere.FileName)))
                        {
                            File.Delete(Path.Combine(folderActual, fisierCopiere.FileName));
                        }

                        fisierCopiere.Extract(folderActual, Ionic.Zip.ExtractExistingFileAction.OverwriteSilently);
                    }

                    //Anuntam serverul ca actualizarea a fost efectuata
                    act.SeteazaNouaVersiune(this.utilizator.Item1, this.utilizator.Item2, CUtile.getCheieLicenta(), idMasina);
                    act.Close();

                    this.lActualizareEfectuata = true;
                }
            }
            else
            {
                this.lActualizareEfectuata = true;
            }
        }
예제 #5
0
 private void btnFinalizeaza_Click(object sender, EventArgs e)
 {
     if (this.lActualizareEfectuata || MessageBox.Show(string.Concat(BMultiLingv.GetById(BMultiLingv.EnumDictionar.actualizarileUlterioareDevinDispoDupaActualizare, this.lTipAplicatie), "\r\n", BMultiLingv.GetById(BMultiLingv.EnumDictionar.suntetiSigurCaNuDoritiActualizareaAplicatiei, this.lTipAplicatie), "\r\n"), BMultiLingv.GetById(BMultiLingv.EnumDictionar.actualizari, this.lTipAplicatie), MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
     {
         lanseazaIStoma();
     }
 }