Kasowanie klucza rejestru

Odpowiedz Nowy wątek
2009-04-16 21:36

Rejestracja: 12 lat temu

Ostatnio: 10 lat temu

0

Na próbie skasowania klucza napotkałem błąd.

public string keyName = "Software\\DemoStore";
RegistryKey regKey = Registry.CurrentUser.OpenSubKey(keyName);

            if (regKey == null)
            {
                MessageBox.Show("You have run the application for the fist time. You have to specifize the location..... ");
                FolderBrowserDialog selectingPath = new FolderBrowserDialog();
                selectingPath.ShowDialog();

                regKey = Registry.CurrentUser.CreateSubKey(keyName); 
                regKey.SetValue("LocationPath", selectingPath.SelectedPath);
            }

            //dla dalszego monitu programu chcę skasować w tym miejscu utworzony klucz

            regKey.DeleteSubKey(keyName);
            regKey.Close();
UnauthorizedAccessExeption was unhandled.   
Nie można zapisać w kluczu rejestru.

Dla linijki: regKey.DeleteSubKey(keyName);

pzdr

Pozostało 580 znaków

asdf
2009-04-16 21:41
asdf
0

RegistryKey regKey = Registry.CurrentUser.OpenSubKey(keyName);

        if (regKey == null)
        {
        // ...
        }

        //dla dalszego monitu programu chcę skasować w tym miejscu utworzony klucz

        regKey.DeleteSubKey(keyName);
        regKey.Close();


Jeżeli klucza nie ma to też próbujesz go usunąć?

Pozostało 580 znaków

2009-04-16 21:47

Rejestracja: 12 lat temu

Ostatnio: 10 lat temu

0
asdf napisał(a)

RegistryKey regKey = Registry.CurrentUser.OpenSubKey(keyName);

        if (regKey == null)
        {
        // ...
        }

        //dla dalszego monitu programu chcę skasować w tym miejscu utworzony klucz

        regKey.DeleteSubKey(keyName);
        regKey.Close();

> 
> Jeżeli klucza nie ma to też próbujesz go usunąć?

Instrukcja warunkowa if już nie jest wykonywana. Więc klucz istnieje :)

asdf, mój lek an całe zło ;)

Pozostało 580 znaków

2009-04-16 23:18

Rejestracja: 12 lat temu

Ostatnio: 10 lat temu

0

Dziwna sytuacja:

try
            {

                RegistryKey regKey = Registry.CurrentUser.OpenSubKey(keyName,true);

                if (regKey == null)            //  1   
                {
                    MessageBox.Show("Nie istnieje");
                    regKey = Registry.CurrentUser.CreateSubKey(keyName);
                }
                else
                {
                    MessageBox.Show("Istnieje");
                }
                regKey.DeleteSubKey(keyName,true);           //    2     
                regKey.Close();
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }

Dziwna sytuacja, w 1 klucz istnieje, a w 2 już nie...

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0