Ejemplo n.º 1
0
        public void vyplnit()
        {
            reset();
            string[] pr       = Rozdelit.Pripony(tbpripona.Text);
            string   mpripona = pr[0].ToLower();

            var info = ASC.Nacti(mpripona);

            tbprogram.Text = info.program;
            tbparam.Text   = info.parametr;
            tbtyp.Text     = info.typ;
            tbikona.Text   = info.ikona;
            tbindex.Text   = info.poradi.ToString();

            //zakazane pripony pro asociaci
            bool p1 = info.misto == "UP";
            bool p2 = info.misto == "UO";
            bool p3 = mpripona != "lnk";
            bool p4 = mpripona != "exe";
            bool p5 = mpripona != "dll";
            bool p6 = mpripona != "";

            if ((p1 || p2) && p3 && p4 && p5 && p6)
            {
                tobnovit.IsEnabled = true;
            }
            else
            {
                tobnovit.IsEnabled = false;
            }

            if (p3 && p4 && p5 && p6)
            {
                tbzmenit.IsEnabled = true;
            }
            else
            {
                tbzmenit.IsEnabled = false;
            }

            nactiIkonu(info.program, info.ikona, info.poradi);
        }
Ejemplo n.º 2
0
        public void seznampripon()
        {
            listView1.Items.Clear();
            tobnovit.IsEnabled     = true;
            zatrhnout              = false;
            chb_listview.IsChecked = false;
            tZmenaLV.Content       = "Obnovit";

            Task ukol = new Task(() => {
                foreach (string klic in Registry.ClassesRoot.GetSubKeyNames())
                {
                    if (klic.Substring(0, 1) == ".")
                    {
                        string pripona = klic.Replace(".", "");
                        string cesta;
                        int index;

                        var info = ASC.Nacti(pripona);

                        if (SPP && info.typ == "" && info.program == "" && info.ikona == "")
                        {
                            continue;
                        }

                        if (ZUP)
                        {
                            if (!(info.nazev.Length >= 5 && info.nazev.Substring(0, ASC.nazevPr.Length) == ASC.nazevPr))
                            {
                                continue;
                            }
                        }

                        if (info.ikona == "")
                        {
                            cesta = info.program.Replace("\"", "");
                            index = 0;
                        }
                        else
                        {
                            cesta = info.ikona;
                            index = info.poradi;
                        }

                        string cesta_ikona = "";
                        ImageSource obraz;

                        if (info.ikona != "")
                        {
                            cesta_ikona = info.ikona + "," + info.poradi;
                            obraz       = Ikony.Otevrit(info.ikona, info.poradi, 0);
                        }
                        else
                        {
                            obraz = Ikony.Otevrit(info.program, 0, 0);
                        }

                        try { obraz.Freeze(); } catch { }

                        Dispatcher.BeginInvoke(DispatcherPriority.Background, (ThreadStart) delegate() {
                            listView1.Items.Add(
                                new Polozky {
                                lvzaskrknuto = zatrhnout,
                                lvobrazek    = obraz,
                                lvpripona    = pripona,
                                lvtyp        = info.typ,
                                lvprogram    = info.program + " " + info.parametr,
                                lvikona      = cesta_ikona
                            });
                        });
                    }
                }
            });

            ukol.Start();
        }