Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как изменить значение ключа в реестре (по умолчанию)? [D6, XP]


Someone ©   (2009-07-30 09:51:00) 

Здравствуйте!
Подскажите пожалуйста такой вопрос: мне нужно програмно внести изменения в реестр, чтобы в контекстном меню Windows появилаcь моя кнопка. Но я не знаю как получить доступ к ключу "по умолчанию".
вот написал функцию:  

procedure TForm1.sdf1Click(Sender: TObject);
var
 REG : TRegistry;
begin
REG := TRegistry.Create;
 REG.RootKey:=HKEY_CLASSES_ROOT;
 REG.OpenKey('*\shell\ReadFiles\command',true);
 REG.WriteString('(По умолчанию)','C:\Program   Files\ReadFiles\ReadFiles.exe puskprog "%L"');
 REG.CloseKey;
 REG.Destroy;
end;

- в результате, у меня в реестре в разеле:
HKEY_CLASSES_ROOT\*\shell\Ran\command
- появляется ещё один строковый ключ - "(по умолчанию)" - который
содержит мой строковый параметр. Т.е. их становится уже два, причём первый ключ "(по умолчанию)" остаётся пустым. В результате при вызове контекстного меню, и нажатии кнопки "Ran" - появляется сообщение, что типа "программа не найдена. Укажите соответствие".
Как же мне получить доступ к самому первому ключу "(по умолчанию)"?
Спасибо.


TIF   (2009-07-30 10:17:00) [1]

Про реестр в TechNet (Registry structure)
http://technet.microsoft.com/en-us/library/cc776231(WS.10).aspx

Сведения о реестре Windows для опытных пользователей
http://support.microsoft.com/kb/256986/ru
(статья база знаний; на русском)


TIF   (2009-07-30 10:14:00) [2]

> читабельную инфу по реестру?

Сайт Microsoft, встроенная справка по реестру тоже какую-то информацию даёт, Википедию можно глянуть
http://ru.wikipedia.org/wiki/Реестр_Windows
http://en.wikipedia.org/wiki/Windows_Registry

А вообще насчёт поисков - это к Google-у :0)


TIF   (2009-07-30 10:12:00) [3]

> Ran

Мож-таки Run? ;-)))
Ran - это прошедшее время от Run. Или вообще богиня моря в скандинавской мифологии


Someone   (2009-07-30 10:10:00) [4]

Спасибо. А не подскажите где можно нарыть читабельную инфу по реестру?


TIF   (2009-07-30 10:04:00) [5]

Всё гениальное - просто :)

У параметра по умолчанию ВООБЩЕ НЕТ ИМЕНИ, то есть имя равно пустой строке:
REG.WriteString( '', 'C:\Program   Files\ReadFiles\ReadFiles.exe puskprog "%L"');
И всё

> доступ к самому первому ключу "(по умолчанию)"?

Советую разобраться с терминологией. В данном случае это был параметр;-)


Наверх

Титульная страница Поиск, карта сайта Написать письмо