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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.11.2014, 22:25   #1
helper999999
Пользователь
 
Регистрация: 22.02.2014
Сообщений: 45
По умолчанию Работа с реестром

подскажите где ошибка, что не указал?
Код:
procedure CreateKeyRun;
var
  key:HKEY;
begin
RegOpenKey(HKEY_CURRENT_USER, PChar('SOFTWARE\MyProgmarINI'), Key);
  RegSetValueEx(key,'FileCode',0,REG_SZ,PChar('1'),lstrlen(PChar('1'))+1);
  RegCloseKey(key);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
CreateKeyRun;
end;
Ключ не создается хотя при копиляции все нормально, и ошибок при работе не выдает.
helper999999 вне форума Ответить с цитированием
Старый 28.11.2014, 22:45   #2
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,762
По умолчанию

Используй TRegistry и не мучайся.
FaTaL вне форума Ответить с цитированием
Старый 28.11.2014, 23:02   #3
HTTqp
Форумчанин
 
Регистрация: 20.12.2013
Сообщений: 164
По умолчанию

пользуйся TRegistry , правда и вес увеличится на 1 метр

Последний раз редактировалось HTTqp; 28.11.2014 в 23:06.
HTTqp вне форума Ответить с цитированием
Старый 28.11.2014, 23:07   #4
helper999999
Пользователь
 
Регистрация: 22.02.2014
Сообщений: 45
По умолчанию

Хотелось бы использовать api функцию
helper999999 вне форума Ответить с цитированием
Старый 28.11.2014, 23:21   #5
Iron Monk
Форумчанин
 
Аватар для Iron Monk
 
Регистрация: 05.10.2007
Сообщений: 478
По умолчанию

Цитата:
Сообщение от helper999999 Посмотреть сообщение
Хотелось бы использовать api функцию
А раздел 'SOFTWARE\MyProgmarINI' уже существует в реестре?
Iron Monk вне форума Ответить с цитированием
Старый 28.11.2014, 23:30   #6
Iron Monk
Форумчанин
 
Аватар для Iron Monk
 
Регистрация: 05.10.2007
Сообщений: 478
По умолчанию

Код:
procedure CreateKeyRun;
var
  key      : HKEY;
  subKey : string;
begin
  subKey:= '1';
  RegOpenKey(HKEY_CURRENT_USER, PChar('SOFTWARE\MyProgmarINI'), Key);
  RegSetValueEx(key,'FileCode',0,REG_SZ,PChar(subKey),lstrlen(PChar(subKey))+length(subKey));
  RegCloseKey(key);
end;
Iron Monk вне форума Ответить с цитированием
Старый 28.11.2014, 23:36   #7
helper999999
Пользователь
 
Регистрация: 22.02.2014
Сообщений: 45
По умолчанию

Iron Monk, спасибо сработатло, а почему только через переменную добавляется, а на прямую нет?
helper999999 вне форума Ответить с цитированием
Старый 28.11.2014, 23:55   #8
Iron Monk
Форумчанин
 
Аватар для Iron Monk
 
Регистрация: 05.10.2007
Сообщений: 478
По умолчанию

Цитата:
Сообщение от helper999999 Посмотреть сообщение
Iron Monk, спасибо сработатло, а почему только через переменную добавляется, а на прямую нет?
Как-то так...
Цитата:
RegSetValue(Key: HKey; SubKey: PChar; ValType: Longint; Value: PChar; cb: Longint): Longint;


Ключ\подключ Key\SubKey.
ValType - тип задаваемой переменной,
Value - буфер для переменной
cb - размер буфера. В Windows 3.1 допустимо только Value=REG_SZ.
Возврат - код ошибки или ERROR_SUCCESS, если нет ошибок.
Iron Monk вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С++ работа с реестром KuriQ Общие вопросы C/C++ 4 14.04.2012 14:22
Работа с реестром? angelada Помощь студентам 4 19.01.2011 12:12
Работа с реестром Aleksey1989 Общие вопросы Delphi 10 14.11.2010 13:09
Работа с реестром Ky3Heu, Общие вопросы Delphi 1 04.05.2009 10:37
Работа с реестром Хs-You Безопасность, Шифрование 9 16.08.2007 22:09