[C#]Проверка наличия ключа в реестре
От: Underwater_aviator  
Дата: 08.09.11 16:15
Оценка:
Доброе время суток.
Нужен способ проверки наличия ключа в реестре.
Т.е мне нужно проверить есть ли некий ключ в реестре.
Пробовал так:


RegistryKey key = Registry.CurrentUser.OpenSubKey("Software\\GameClub\\");

            if (key == null) // тут должна идти проверка существования ключа
            {
                ...
                
               
            }
            else
            {
               ...        
            }


Но он не возвращает NULL, он создает ключ и возвращает его путь в реестре.
Пробовал и перегрузку

RegistryKey key = Registry.CurrentUser.OpenSubKey("Software\\GameClub\\", false);


эффект тот же.
То ли я косячу, то ли он как то не так отрабатывает.
Есть другие варианты ?
Спасибо.
Re: [C#]Проверка наличия ключа в реестре
От: Pavel Dvorkin Россия  
Дата: 08.09.11 16:30
Оценка:
Здравствуйте, Underwater_aviator, Вы писали:

U_>Но он не возвращает NULL, он создает ключ и возвращает его путь в реестре.


Провеь, нет ли этого ключа в реестре (через regedit). Если есть — удали.
With best regards
Pavel Dvorkin
Re[2]: [C#]Проверка наличия ключа в реестре
От: Underwater_aviator  
Дата: 08.09.11 16:32
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Здравствуйте, Underwater_aviator, Вы писали:


U_>>Но он не возвращает NULL, он создает ключ и возвращает его путь в реестре.


PD>Провеь, нет ли этого ключа в реестре (через regedit). Если есть — удали.

Перед запуском программы я его удаляю.
Re: у меня всё работает
От: Философ Ад http://vk.com/id10256428
Дата: 08.09.11 17:04
Оценка:
Здравствуйте, Underwater_aviator, Вы писали:


            RegistryKey key = Registry.CurrentUser.OpenSubKey("000");
            if (key != null)
                Console.WriteLine("been Created")
                    ;else
                Console.WriteLine("not been Opened");
            Console.ReadLine();


получаю "not been Opened"
ЧЯДНТ????
Всё сказанное выше — личное мнение, если не указано обратное.
Re[2]: у меня всё работает
От: Underwater_aviator  
Дата: 08.09.11 21:21
Оценка:
Здравствуйте, Философ, Вы писали:

Ф>Здравствуйте, Underwater_aviator, Вы писали:



Ф>
Ф>            RegistryKey key = Registry.CurrentUser.OpenSubKey("000");
Ф>            if (key != null)
Ф>                Console.WriteLine("been Created")
Ф>                    ;else
Ф>                Console.WriteLine("not been Opened");
Ф>            Console.ReadLine();

Ф>


Ф>получаю "not been Opened"

Ф>ЧЯДНТ????
Я поменял название key и все заработало, и даже знать не хочу с чем это было связано.
Re[3]: у меня всё работает
От: Sinix  
Дата: 09.09.11 02:33
Оценка:
Здравствуйте, Underwater_aviator, Вы писали:

U_>Я поменял название key и все заработало, и даже знать не хочу с чем это было связано.


Ось не x64 случаем?
http://social.msdn.microsoft.com/Forums/en/netfx64bit/thread/92f962d6-7f5e-4e62-ac0a-b8b0c9f552a3
Re[4]: у меня всё работает
От: Underwater_aviator  
Дата: 09.09.11 14:14
Оценка: 11 (1)
Здравствуйте, Sinix, Вы писали:

S>Здравствуйте, Underwater_aviator, Вы писали:


U_>>Я поменял название key и все заработало, и даже знать не хочу с чем это было связано.


S>Ось не x64 случаем?

S>http://social.msdn.microsoft.com/Forums/en/netfx64bit/thread/92f962d6-7f5e-4e62-ac0a-b8b0c9f552a3
Нет х86.
Re[5]: у меня всё работает
От: Sinix  
Дата: 09.09.11 14:24
Оценка:
Здравствуйте, Underwater_aviator, Вы писали:

S>>Ось не x64 случаем?

S>>http://social.msdn.microsoft.com/Forums/en/netfx64bit/thread/92f962d6-7f5e-4e62-ac0a-b8b0c9f552a3
U_>Нет х86.

Тогда
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.