NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Unime

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na matesax
David Jančík:18.5.2012 17:56

Už se v té diskuzi začínám ztrácet :D
Jop teď je to pěkný. Jen drobné poznámky: to zkomolené defaultní máš ještě v tooltipu u onoho tlačítka. Myslím, že tam ale klidně můžeš napsat Výchozí. A tlačítko pro načtení uživatelského nastavení tam máš proč? Jestli to myslíš jako zahození změn tak tam dej spíš něco jako neukládat, zahodit...

Jinak hezký thumbs up :)

Odpovědět
18.5.2012 17:56
Zapomeň, že je to nemožné a udělej to ;)
Avatar
matesax
Tvůrce
Avatar
Odpovídá na David Jančík
matesax:18.5.2012 18:02

Ono to myslím přesně tak jak píši - prostě načtení uloženého nastavení,... Upraveno - za chvíli bude publikováno. :)

 
Odpovědět
18.5.2012 18:02
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na matesax
David Jančík:18.5.2012 18:04

Ale tak uložené nastavení se snad načte vždycky když spustíš program ne?

Odpovědět
18.5.2012 18:04
Zapomeň, že je to nemožné a udělej to ;)
Avatar
matesax
Tvůrce
Avatar
Odpovídá na David Jančík
matesax:18.5.2012 18:08

Pokud ale uživatel změní nastavení a chce se vrátit k původnímu,... Přeci kvůli tomu nebudu resetovat program,... Jinak nevěděl by jsis rady s tou kontrolou existence reg. keye? Sám vidíš, že tam mám použitou logickou nulu a nejde to. Děkuji za případnou pomoc. :)

 
Odpovědět
18.5.2012 18:08
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na matesax
David Jančík:18.5.2012 18:17

No tomu já říkám diskartovat (zahodit) změny.

Registry dělám takhle

public static bool check_reg_startup()
        {
            RegistryKey rkApp = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
            if (rkApp.GetValue("WakeWorker") == null) return false;
            try
            {
                if (!File.Exists(rkApp.GetValue("WakeWorker").ToString().Replace(" -h", "")))
                    rkApp.SetValue("WakeWorker", Application.ExecutablePath.ToString() + " -h");
            }
            catch
            {
                rkApp.SetValue("WakeWorker", Application.ExecutablePath.ToString() + " -h");
            }
            return true;
        }

Je to ošetřený když přesuneš aplikaci. -h je atribut pro spouštění zminimalizované aplikace ten kontroluješ při spouštění programu v Program.cs.

if ((args.Length == 1) && (args[0] == "-h"))

Mazání pak takto

rkApp.DeleteValue("WakeWorker", false);

Jestli si myslel tohle...

Odpovědět
18.5.2012 18:17
Zapomeň, že je to nemožné a udělej to ;)
Avatar
matesax
Tvůrce
Avatar
Odpovídá na David Jančík
matesax:18.5.2012 18:42

Já jen potřebuji udělat podmínku - pokud již key existuje, checkBox1.Checked = true,... A naopak.
Používám - if ("key" == null) key je ten klíč. ALe nefunguje to.

 
Odpovědět
18.5.2012 18:42
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na matesax
David Jančík:18.5.2012 18:46

Na to je ta metoda co máš nahoře. Pak si dáš podmínku:

checkBox1.Checked = check_reg_startup() ? true : false;

if (check_reg_startup())
    checkBox1.Checked = true;
else
    checkBox1.Checked = false;
Odpovědět
18.5.2012 18:46
Zapomeň, že je to nemožné a udělej to ;)
Avatar
matesax
Tvůrce
Avatar
Odpovídá na David Jančík
matesax:18.5.2012 18:55

Tak nějak se v tom nevyznám - jak mám nastavit to -h? Máš tam podmínku pro vrácení false ale true to nakonec přemaže.

 
Odpovědět
18.5.2012 18:55
Avatar
David Jančík
Vlastník
Avatar
Odpovídá na matesax
David Jančík:18.5.2012 19:03

Tohle si tam dej.

public static bool check_reg_startup()
{
        RegistryKey rkApp = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
        if (rkApp.GetValue("Unime") == null) return false;
        try
        {
                if (!File.Exists(rkApp.GetValue("Unime").ToString()))
                        rkApp.SetValue("Unime", Application.ExecutablePath.ToString());
        }
        catch
        {
                rkApp.SetValue("Unime", Application.ExecutablePath.ToString());
        }
        return true;
}

Jakmile dáš return tak se metoda ukončí stejně tak cyklus.

Odpovědět
18.5.2012 19:03
Zapomeň, že je to nemožné a udělej to ;)
Avatar
matesax
Tvůrce
Avatar
Odpovídá na David Jančík
matesax:18.5.2012 19:12

JJ - už se plně orientuji - přepsal jsem svoje appName a jede to skvěle - tak to vypadá, že to již nemá chybičku (ten program). :)

 
Odpovědět
18.5.2012 19:12
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 64.