Вверх ↑
Этот топик читают: Гость
Ответов: 952
Рейтинг: 34
#1: 2019-03-04 17:01:37 ЛС | профиль | цитата
Предлагаю собирать коллекцию странностей компонентов в одном месте, здесь.

Пространность счетчика числа строк в компоненте Мемо уже упоминал - если даже очистить все строки, все равно будет на нижней точке писать что содержится одна строка. В невизуальном компоненте StringList этого бага или фичи нет..

Компонент для записи / чтения в реестр - при автостарте программы любые попытки записать чтото в реестр сопровождаются ошибкой String debug "Не удалось записать данные в реестр" Что то в этом духе. Тут выложил схему для тестирования методов автозагрузок:
http://forum.hiasm.com/topic/67286/1#
Пришлось отказаться от многих функций, в тч привязка к расширениям программы, тк при автостарте пишушие в реестр компоненты выдают такую табличку.
карма: 0
Время верстки: %cr_time% Текущее время: %time%
0
vip
#1.1контекстная реклама от партнеров
Ответов: 3869
Рейтинг: 620
#2: 2019-03-04 17:32:02 ЛС | профиль | цитата
Если автозапуск через реестр (в HKLM), то ветки HKEY_CURRENT_USER для записи может в момент запуска не существовать. А запись в HKLM требует запуска от администратора.
карма: 18

0
Ответов: 1682
Рейтинг: 149
#3: 2019-03-04 21:23:46 ЛС | профиль | цитата
Aziz писал(а):
если даже очистить все строки, все равно будет на нижней точке писать что содержится одна строка.

Ну так она и есть - только пустая. Можно просто посчитать кол-во символов во всём memo, если нужно убедиться, что он пуст.

--- Добавлено в 2019-03-04 21:25:02

Aziz писал(а):
при автостарте программы

Какое конкретно событие вызывается? onCreate?

Редактировалось 1 раз(а), последний 2019-03-04 21:25:02
карма: 5
0
Ответов: 1169
Рейтинг: 27
#4: 2019-03-04 22:01:40 ЛС | профиль | цитата
Netspirit писал(а):
А запись в HKLM требует запуска от администратора.


а можно вроде как и обойти это....,

добавляем имя параметра "путь до программы"
данные пишем "~ RUNASADMIN"
ключ CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers

после этих манипуляций, просто делаем перезапуск программы, проверяем записаны ли у нас данные уже (запуск от админа) ну и уже юзаем ветку HKLM без предоставления прав админа, ну если конечно не нужны права на запись в CURRENT_USER

Редактировалось 2 раз(а), последний 2019-03-04 22:02:04
карма: 1

0
Ответов: 952
Рейтинг: 34
#5: 2019-03-04 23:32:44 ЛС | профиль | цитата
Netspirit, пробовал сначала и через local machine. Потом current user. Эффект тот же. Похоже не зависит от ветки, тк даже с автозапуском через ярлык все равно ругалось о записи в реестр, нашел причину - там схема привязки расширений к программе опять же состояла из элементов реестра.
Помню как то раньше я делал мод компонента реестра чтобы в свойствах можно было отключать это сообщение об ошибке. Теперь уже неинайду наверное.
карма: 0
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 3869
Рейтинг: 620
#6: 2019-03-05 11:53:56 ЛС | профиль | цитата
А, ты про само сообщение. Так его вообще надо убрать и добавить событие onError. Если знаешь Delphi - убрать сообщение можешь сам в файле hiRegistry.pas.
карма: 18

0
Ответов: 952
Рейтинг: 34
#7: 2019-03-06 01:31:44 ЛС | профиль | цитата
3042, да. Netspirit, тоже да) Правил когда то по аналогии. Хоть дельфи не знаю, чисто используя английский + логику техническую.

Редактировалось 1 раз(а), последний 2019-03-06 01:33:06
карма: 0
Время верстки: %cr_time% Текущее время: %time%
0
7
Сообщение
...
Прикрепленные файлы
(файлы не залиты)