Работа с реестром в C#
От: al080la  
Дата: 01.04.09 06:52
Оценка:
Всем привет!
У меня вот какая проблемма:
пишу софтину работающую с реестром,
при написании
.......
RegistryKey reg_f = Registry.LocalMachine.OpenSubKey("\\Software\\Realtek\\InstallShield");
string val = (string)reg_f.GetValue("ProgramFilesDir");
textBox1.Text = val.ToString();\
........
выдает ошибку: System.NullReferenceException was Unhandled
в чем дело не пойму.
Помогите плиз!
Re: Работа с реестром в C#
От: Aen Sidhe Россия Просто блог
Дата: 01.04.09 06:54
Оценка:
Здравствуйте, al080la, Вы писали:

A>Всем привет!

A>У меня вот какая проблемма:
A>пишу софтину работающую с реестром,
A>при написании
A>.......
A>RegistryKey reg_f = Registry.LocalMachine.OpenSubKey("\\Software\\Realtek\\InstallShield");
A>string val = (string)reg_f.GetValue("ProgramFilesDir");
A>textBox1.Text = val.ToString();\
A>........
A>выдает ошибку: System.NullReferenceException was Unhandled
A>в чем дело не пойму.
A>Помогите плиз!

Видимо что-то где-то null, а ты считаешь, что не null.
С уважением, Анатолий Попов.
ICQ: 995-908
Re: Работа с реестром в C#
От: mrjeka Россия  
Дата: 01.04.09 06:57
Оценка:
Здравствуйте, al080la, Вы писали:

A>Всем привет!

A>У меня вот какая проблемма:
A>пишу софтину работающую с реестром,
A>при написании
A>.......
A>RegistryKey reg_f = Registry.LocalMachine.OpenSubKey("\\Software\\Realtek\\InstallShield");
A>string val = (string)reg_f.GetValue("ProgramFilesDir");
A>textBox1.Text = val.ToString();\
A>........
A>выдает ошибку: System.NullReferenceException was Unhandled
A>в чем дело не пойму.
A>Помогите плиз!

А вы не смотрели, чему равен val?
И нет необходимости у val вызывать метод ToString(), т.к. эта переменная и так объявлена как стринг
Re: Ответ
От: BluntBlind  
Дата: 01.04.09 07:01
Оценка:
A>RegistryKey reg_f = Registry.LocalMachine.OpenSubKey("\\Software\\Realtek\\InstallShield");
A>string val = (string)reg_f.GetValue("ProgramFilesDir");
Ошибка тут:
A>textBox1.Text = val.ToString();\

Т.к. параметра "ProgramFilesDir" нет

RegistryKey.GetValue
Возвращает значение, связанное с заданным именем. Возвращает nullNothingnullptrссылка null (Nothing в Visual Basic), если пара "имя-значение" отсутствует в реестре.


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