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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.10.2014, 19:11   #1
HTTqp
Форумчанин
 
Регистрация: 20.12.2013
Сообщений: 164
По умолчанию Можно ли так оформить процедуру...

есть процедура работающая с реестро пишу так
Код:
procedure CreateKeyRun(path,name:string);
var
  key:HKEY;
begin
if RegOpenKeyEx(HKEY_CURRENT_USER,'тут путь до нужного раздела',0,KEY_CREATE_SUB_KEY or KEY_SET_VALUE, Key)=ERROR_SUCCESS then
 begin
  RegSetValueEx(key,PChar(Name),0,REG_SZ,PChar(path),(lstrlen(PChar(path))+1)*SizeOf(Char));
 end;
if RegOpenKeyEx(HKEY_CURRENT_USER,'тут путь до другого раздела',0,KEY_CREATE_SUB_KEY or KEY_SET_VALUE, Key)=ERROR_SUCCESS then
 begin
  RegSetValueEx(key,PChar(Name),0,REG_SZ,PChar(path),(lstrlen(PChar(path))+1)*SizeOf(Char));
end;
 RegCloseKey(key);
end;
можно ли выполнить RegCloseKey(key); в конце всей процедуры или же нужно закрывать после каждого открытия пути?
HTTqp вне форума Ответить с цитированием
Старый 11.10.2014, 19:16   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я бы закрывал после каждого.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.10.2014, 19:21   #3
HTTqp
Форумчанин
 
Регистрация: 20.12.2013
Сообщений: 164
По умолчанию

спасибо, просто чтобы и на будущее знать можно ли так или нет)
HTTqp вне форума Ответить с цитированием
Старый 11.10.2014, 20:58   #4
indexx
Заблокирован
 
Регистрация: 12.09.2014
Сообщений: 544
По умолчанию

HTTqp Для справки. Если при выполнении условия выполняется одна строка кода, её не нужно заключать в begin end. Достаточно структуры if [условие] then [выполняемая строка]
indexx вне форума Ответить с цитированием
Старый 11.10.2014, 21:00   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
просто чтобы и на будущее знать можно ли так или нет)
Если ты не будешь закрывать хендлы по идее в функциях, которые работают с записью на диск или устройство эта самая запись может не сработать.
По идее винда сама должна понять что хендл нужно закрыть, но так далеко не всегда происходит.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Можно ли так? саша40 Общие вопросы Delphi 4 01.08.2014 22:32
Можно ли так поступить? nokian8 Помощь студентам 4 16.07.2012 07:06
Можно ли оформить программу в паскаль? Cavin Lazarus, Free Pascal, CodeTyphon 7 09.11.2011 15:48
оформить простенькую процедуру -=Andriushka=- Помощь студентам 8 07.04.2011 19:10
Оформить процедуру и функцию в виде модуля пользователя и файла Anny_Apple Паскаль, Turbo Pascal, PascalABC.NET 6 13.03.2011 14:24