예제 #1
0
        /// <summary>
        /// Metoda zahajující stahování. Uloží a načte aktuální informace z uživatelských polí a zahájí vlákno pro stahování a vlákno pro kontorlu údajů.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button3_Click(object sender, EventArgs e)
        {
            if (bezi == false)
            {
                bezi = true;
                bool start = true;

                try
                {
                    saveRSD(null, Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) + "\\" + "active.xml");
                    listBox1.Items.Clear();
                    openRSD(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) + "\\" + "active.xml");
                    Radio.path = textBox5.Text.Substring(0, 2) + Radio.Odfiltruj(textBox5.Text.Substring(2));

                    try
                    {
                        Thread thr = new Thread(Radio.Start);
                        Thread cnt = new Thread(new ThreadStart(this.Control));
                        thr.Start();
                        cnt.Start();
                    }
                    catch
                    {
                        MessageBox.Show("Při startování úlohy nastala chyba. Ověřte problematická vlákna.", "Start úlohy", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        bezi  = false;
                        start = false;
                    }
                }
                catch
                {
                    if (start == true)
                    {
                        MessageBox.Show("Při startování úlohy nastala chyba. Ověřte, že jsou všechna pole vyplněna platnými hodnotami.", "Start úlohy", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        bezi = false;
                    }
                }
            }
            else
            {
                //nedelej nic;
            }
        }
예제 #2
0
        /// <summary>
        /// Metoda načítající data ze zvoleného RSD souboru.
        /// </summary>
        /// <param name="jm">Cesta k soboru</param>
        private void openRSD(string jm)
        {
            DataSet ods = new DataSet();

            ods.ReadXml(jm);

            Radio.jmeno    = Radio.Odfiltruj((string)ods.Tables["Informace"].Rows[0]["Jmeno"]);
            Radio.doba     = Convert.ToInt32(ods.Tables["Informace"].Rows[0]["Trvani"]);
            Radio.koncovka = (string)ods.Tables["Informace"].Rows[0]["Koncovka"];
            Radio.stream1  = new Uri((string)ods.Tables["Informace"].Rows[0]["URL1"]);
            Radio.stream2  = new Uri((string)ods.Tables["Informace"].Rows[0]["URL2"]);

            Radio.cyklu = ods.Tables["Casy"].Rows.Count;
            string[] whh = new string[Radio.cyklu];

            for (int r = 0; r < ods.Tables["Casy"].Rows.Count; r++)
            {
                whh[r] = (string)ods.Tables["Casy"].Rows[r]["Cas"];
            }

            Radio.when     = whh;
            Radio.stahovac = new Thread[Radio.cyklu];
            Radio.nuly     = Radio.kolik_nul();


            textBox1.Text  = Radio.jmeno;
            textBox2.Text  = Radio.doba.ToString();
            textBox3.Text  = Radio.stream1.ToString();
            textBox4.Text  = Radio.stream2.ToString();
            comboBox1.Text = Radio.koncovka;


            listBox1.Items.Clear();
            foreach (string lbi in whh)
            {
                listBox1.Items.Add(lbi);
            }
        }