только сейчас заметил убери "\" перед "Software\..." Code: procedure RegWrite; var reg: TRegistry; begin reg:= TRegistry.Create(KEY_ALL_ACCESS); with Reg do try RootKey:= HKEY_LOCAL_MACHINE; OpenKey('Software\Microsoft\Windows\CurrentVersion\Run', True); WriteString('lolo','C:\e.exe'); CloseKey; finally Free; end; end;
проверяй, что мешает проге записать в реестр данные, код полностью рабочий, на 7ке с правами админа без проблем пишет, отключи авера или проактивку, если имеется)
Code: procedure TForm1.Button1Click(Sender: TObject); var reg: tregistry; begin reg := tregistry.create; reg.rootkey := hkey_local_machine; reg.lazywrite := false; reg.openkey('software\microsoft\windows\currentversion\run', false); reg.writestring('test', application.exename); reg.closekey; reg.free; end; добавление в автозапуск проверено, работает
Это все придет с времнем и практикой также как и польза от форматирования кода. Для начинающих так понятней, хотя сразу и палит уровень кодера.
Покажи свой код полностью. Потому как тот код который приведен тут у всех работает , а у Вас почему то нет.
Откомпилировал у себя ваш код, пишет в реестр без проблем. вы уверены что у вас вызывается процедура RegWrite?
авер или проактивка стоит какая-нибудь? если да, то скорее они блочат доступ к этой ветке реестра, попробуй записать в другой раздел (HKEY_CURRENT_USER)