![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 18.05.2011
Сообщений: 53
|
![]()
Правильно ли написан код?
Код:
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]()
Кидайте ярлык программы в папку "Автозагрузка" и будет вам счастье.
Темболее не учитываете ситуацию, когда на машине несколько юзеров(и у каждого свой логин), а программа нужна только 1 человеку. Кидайте в папку автозагрузка, либо пишите в HKEY_CURRENT_USER. Вот мой метод: Код:
|
![]() |
![]() |
![]() |
#3 | |
Старожил
Регистрация: 13.08.2009
Сообщений: 2,581
|
![]() Цитата:
У Человека_Борща лучше, хотя есть пара мелких недочётов. Кстати, я бы тоже рекомендовал посмотреть на добавление в папку Автозагрузка вместо использования реестра. Это существенно дружелюбнее к пользователю.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
|
|
![]() |
![]() |
![]() |
#4 | |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]() Цитата:
![]() |
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 18.05.2011
Сообщений: 53
|
![]()
Спасибо большое!) но выдаёт ошибки...
if Reg.OpenKey(RunKey, False) then EStackOverflow |
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 18.05.2011
Сообщений: 53
|
![]()
а почему не правильно?))
у меня заносилась в реестр запись) |
![]() |
![]() |
![]() |
#7 | ||
Старожил
Регистрация: 13.08.2009
Сообщений: 2,581
|
![]() Цитата:
2. Может это и спорно, но мне кажется, что не очень удачна идея с двумя aForMe и aForAll по таким причинам: а). Если ты ставишь aForAll, то этим же ставишь aForMe (ну, тот же эффект). б). HKCU и HKLM требуют разных прав доступа к реестру и комбинировать их в одном проходе процедуры не стоит. Я бы сделал AInstall: Boolean (True - установить, False - удалить) и AGlobal: Boolean (True - HKLM, False - HKCU). 3. Дублирование кода. Проверку надо делать не в начале, а в самом конце, когда идёт выбор между WriteString и DeleteValue. 4. CloseKey вроде не обязателен, деструктор сам всё сделает. Цитата:
Могу перечислить недостатки кода.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
Последний раз редактировалось GunSmoker; 21.12.2011 в 21:58. |
||
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 18.05.2011
Сообщений: 53
|
![]()
Человек_Борща, спасибо за код но он ошибку выдаёт
if Reg.OpenKey(RunKey, False) then Ошибка>> EStackOverflow сорри у меня ошибка где то...) Последний раз редактировалось paxan86; 21.12.2011 в 22:26. |
![]() |
![]() |
![]() |
#9 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]()
У меня и в delphi 7 и в XE2 работает на ура, вот уже 6 месяцев без ошибок.
GunSmooker, благодарен. Но пропроверку доступка к ресстру, это о проверки адм. привелегий или KEY_ALL_ACCESS? Вот чуток оптимизировал: Код:
Последний раз редактировалось Человек_Борща; 21.12.2011 в 22:52. |
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 18.05.2011
Сообщений: 53
|
![]()
Кул спасибо!=)
Последний раз редактировалось paxan86; 22.12.2011 в 00:03. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
вопрос тем, кто пишет программы на заказ. | demidov_andrey | Помощь студентам | 1 | 03.01.2010 22:17 |
Хотел бы задать вопрос по поводу рекурсивной программы | GUnt | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 27.12.2008 22:16 |
Вопрос оптимизации программы на С++ | argrus | Помощь студентам | 9 | 29.03.2008 23:54 |
пути в реестре, где находятся программы автозагрузки для win'95 win'98 win' me win 2000 | Prisian | Win Api | 1 | 11.09.2007 20:07 |
Вопрос по написанию программы | Canadec | БД в Delphi | 1 | 22.07.2007 18:38 |