Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2008, 08:34   #1
AngelOfDeath
Delphi/C++/Asm
Форумчанин Подтвердите свой е-майл
 
Аватар для AngelOfDeath
 
Регистрация: 28.03.2008
Сообщений: 358
Вопрос Как удалить из реестра?

Как удалить из реестра вот это:
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, registry;

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  h:TRegistry;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
H:=TRegistry.Create;
H.RootKey:=HKEY_LOCAL_MACHINE;
H.OpenKey('\Software\Microsoft\Windows\CurrentVersion\Run', false);
H.WriteString('Proga Shytka','C:\windows\system32\notepad.exe');
  H.CloseKey;
H.Free
end;

end.
Очень нужно
И вообще как переписывать код на записи в реестр на код удаления из реестра
AngelOfDeath вне форума Ответить с цитированием
Старый 10.04.2008, 09:10   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

RegDeleteKey
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.04.2008, 09:26   #3
AngelOfDeath
Delphi/C++/Asm
Форумчанин Подтвердите свой е-майл
 
Аватар для AngelOfDeath
 
Регистрация: 28.03.2008
Сообщений: 358
По умолчанию

Можете привести полный пример кода удаления?
Вот код записи
Код:
# H:=TRegistry.Create;  
 H.RootKey:=HKEY_LOCAL_MACHINE;  
 H.OpenKey('\Software\Microsoft\Windows\CurrentVersion\Run', false);  
 H.WriteString('Proga Shytka','C:\windows\system32\notepad.exe');  
   H.CloseKey;  
 H.Free
AngelOfDeath вне форума Ответить с цитированием
Старый 10.04.2008, 10:03   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Пишу по памяти:
Код:
var r:HKEY;
begin
RegOpenKey(HKEY_LOCAL_MACHINE,'\Software\Microsoft\Windows\CurrentVersion\Run',r);
RegDeleteKey(r,'Proga Shytka');
end;
Просто в реестр гадить себе не хочу )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.04.2008, 12:44   #5
AngelOfDeath
Delphi/C++/Asm
Форумчанин Подтвердите свой е-майл
 
Аватар для AngelOfDeath
 
Регистрация: 28.03.2008
Сообщений: 358
По умолчанию

Не чо то не получается
легче самому реестр почистить
AngelOfDeath вне форума Ответить с цитированием
Старый 10.04.2008, 12:54   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

RegDeleteValue пробуй.
Все там просто.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.04.2008, 15:15   #7
Alter
Старожил
 
Аватар для Alter
 
Регистрация: 06.08.2007
Сообщений: 2,239
Сообщение

DeleteKey - удалит часть ветки,
DeleteValue - удалит значения этой ветки.

Например:
Есть путь: "HKEY_LOCAL_MACHINE\Software\Microso ft\Windows\CurrentVersion\Run"
Есть параметры в нём: "logo"="C:\temp.exe"

При вызове DeleteKey: reg.DeleteKey('Run'); удалиться Run.
При вызове DeleteValue: reg.DeleteValue('logo'); удалиться logo, с параметром(в данном случае это путь к exe).

Последний раз редактировалось Alter; 10.04.2008 в 15:19.
Alter вне форума Ответить с цитированием
Старый 10.04.2008, 16:16   #8
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,759
По умолчанию

В твоем случае это будет выглядеть так:
Код:
H:=TRegistry.Create;  
 H.RootKey:=HKEY_LOCAL_MACHINE;  
 H.OpenKey('\Software\Microsoft\Windows\CurrentVersion\Run', false);  
 H.DeleteValue('Proga Shytka');  
   H.CloseKey;  
 H.Free
FaTaL вне форума Ответить с цитированием
Старый 10.04.2008, 17:07   #9
Alter
Старожил
 
Аватар для Alter
 
Регистрация: 06.08.2007
Сообщений: 2,239
По умолчанию

Цитата:
Сообщение от FaTaL Посмотреть сообщение
В твоем случае это будет выглядеть так:
Код:
H:=TRegistry.Create;  
 H.RootKey:=HKEY_LOCAL_MACHINE;  
 H.OpenKey('\Software\Microsoft\Windows\CurrentVersion\Run', false);  
 H.DeleteValue('Proga Shytka');  
   H.CloseKey;  
 H.Free
Это неверно: H.OpenKey('\Software\Microsoft\Windows\CurrentV ersion\Run', false);
Надо так: H.OpenKey('Software\Microsoft\Windows\CurrentV ersion\Run', false);
Alter вне форума Ответить с цитированием
Старый 10.04.2008, 18:09   #10
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,759
По умолчанию

Цитата:
Сообщение от Alter Посмотреть сообщение
Это неверно: H.OpenKey('\Software\Microsoft\Windows\CurrentV ersion\Run', false);
Надо так: H.OpenKey('Software\Microsoft\Windows\CurrentV ersion\Run', false);
Я скопировал исходник и просто изменил. Так что это не ко мне
FaTaL вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск параметров реестра Лубышев Общие вопросы Delphi 1 08.06.2008 22:11
Автоматическоеформирование реестра заявок Levchik Microsoft Office Excel 5 05.06.2008 18:41
Копирование данных из реестра delphin100 Общие вопросы Delphi 5 06.05.2008 16:36
Мониторинг реестра AidarBik Безопасность, Шифрование 4 30.09.2007 15:31
как удалить анти вирус( касперский 2006)если она не работает и ее не возможно удалить Alar Общие вопросы Delphi 0 29.10.2006 21:36