[offtop]Леонид, коллега 1nd1g0 не любит реестр, он любит INI-файлы, но пользуется для работы с ними Ini и GVarContainer[/offtop]
Этот топик читают: Гость
Ответов: 3889
Рейтинг: 362
|
|||
карма: 1 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
[offtop]
1nd1g0 писал(а): коллега 1nd1g0 не любит реестр, он любит INI-файлыНо использовать для таймера *.ini файл, это не комильфо. ИМХО Писать каждую секунду данные в файл -- полный бред. Писать по выходу... может появиться ситуация, когда файл закроется нештатно, и данные уплывут. Тем и хорош реестр, что в него можно, и писать часто, и следить за ним не надо[/offtop] |
|||
карма: 22 |
|
Ответов: 3889
Рейтинг: 362
|
|||
"Долгожданная" версия с реестром (см. ниже)
|
|||
карма: 1 |
|
Ответов: 8928
Рейтинг: 823
|
|||
1nd1g0, тоже ненавижу программы прописывающие себя везде и решающие за меня, что мне нужно, особенно Win7, блин
|
|||
карма: 19 |
|
Ответов: 3889
Рейтинг: 362
|
|||
Ой, не заметил избыточности
------------ Дoбавленo в 14.05: Вариант с реестром, подчищающий после себя ключ.
|
|||
карма: 1 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
nesco писал(а): Писать каждую секунду данные в файл -- полный бред. Писать по выходу... может появиться ситуация, когда файл закроется нештатно, и данные уплывут. Тем и хорош реестр, что в него можно, и писать часто, и следить за ним не надо1nd1g0 писал(а): Вариант с реестром, подчищающий после себя ключ.------------ Дoбавленo в 16.37: А интересно, pavleg знает что в Windows есть "Планировщик заданий" ? |
|||
карма: 25 |
|
Ответов: 3889
Рейтинг: 362
|
|||
Tad, запись в реестр производится всего дважды, первый раз - при задании времени. Второй - после срабатывания по назначенному времени - ключ удаляется чтобы не мусорить (первое правило хорошего программиста) и не мешать последующим запускам программы. Я был против реестра, меня трижды попросили, прежде чем я сделал, отстань уже от меня со своими виртуальными минусами. Сам я их тоже принципиально никому ни разу не ставил, но и не угрожал, тем более - необдуманно.
Tad писал(а): реестр - тот же файл (вернее несколько файлов) и писать в него каждую секунду то-же что и писать в ini. 1:1.AFAIK, Реестр - это в первую очередь эффективная база данных с предкэшированием в оперативной памяти с отложенной записью. Запись происходит только в безопасных (по мнению системы) ситуациях спада активности, а наиболее критичные места - попадают на диск только при завершении работы. Хотя на чтение мелкие файлы также кэшируются, частая запись в мелкий файл должна значительно проигрывать записи в реестр, хотя бы из-за особенностей работы (особенно - журналирования) файловой системы. Но я повторю ещё раз для тех, кто не привык тратить время на много буков в постах раньше, в программе Леонида была всего одна запись в файл, в моей доработке - всего одна запись в реестр и одно стирание мусорного ключа при закрытии программы. Это - за весь цикл работы. Так что nesco тоже не до конца убедителен, тут реестр оправдывает только вероятность запрета на запись в ini-файл в той же папке системой или проактивной защитой. Т.к. такое бывает, и гадить файлом во временную директорию не многим лучше, реестр я таки сделал. |
|||
карма: 1 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
1nd1g0 писал(а): Так что nesco тоже не до конца убедителен, тут реестр оправдывает только вероятность запрета на запись в ini-файл в той же папке системой или проактивной защитой. Т.к. такое бывает, и гадить файлом во временную директорию не многим лучше, реестр я таки сделалНельзя забывать и о том, что запись каждую секунуду в файл, пусть и временный, чревато дефрагментацией диска. Писать во временный файл очень даже можно, если он находится на виртуальном RAM диске, это самый наилучший вариант. ИМХО |
|||
карма: 22 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
1nd1g0, зря ты
1nd1g0 писал(а): отстань уже от меня со своими виртуальными минусами.1. При запуске программы фокус на Edit-секунды. Можешь сказать, что так и было задумано. 2. Переход с Edit на Edit по Enter и запуск по Enter на Edit-секунды. Но так как Edit.ClearAfterEnter=True, то MathParse ничего не остаётся как %1 + %2/24 + %3/1440 + %4/86400 сложить текущее время+0+0+%4/86400 3. Совсем не обязательно ставить 3-и компонента Registry. Можно обойтись и одним. 4. Могу продолжить и дальше. Надо ??? Первых два пункта - глюк Леонида, но так как ты их использовал, то досталось тебе. По поводу 1nd1g0 писал(а): Реестр - это в первую очередь эффективная база данных А вообще-то РЕЕСТР - это чисто абстрактное понятие. Нет его, как такового, в природе. Только в памяти. В каталоге,например, C:WindowsSystem32Config имеются файлы system, software, sam, security, default Все файлы без расширений. Копия этих файлов хранится отдельно. Кроме того, файлы, используемые при построении «рабочей версии» реестра, могут храниться в каталогах: Documents and Settings<Username> — файл «Ntuser.dat» Documents and Settings<Username>Local SettingsApplication DataMicrosoftWindows — файл «UsrClass.dat» И ещё может быть куча файлов. Когда запускают regedit, то то, что запустивший видит на экране, формируется из этих файлов. Все эти файлы, насколько мне известно, обыкновенные типированные файлы. Т.е. их можно вполне назвать и БД |
|||
карма: 25 |
| ||
Голосовали: | ser_davkin |
Ответов: 16884
Рейтинг: 1239
|
|||
карма: 25 |
| ||
файлы: 1 | worktimer.rar [1.3KB] [95] |
Ответов: 8928
Рейтинг: 823
|
|||
Tad,
|
|||
карма: 19 |
|
Ответов: 4641
Рейтинг: 334
|
|||
pavleg писал(а): нужен таймер который будет отсчитывать заданное колво времени |
|||
карма: 1 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Ravilr писал(а): Толи каждую секунду писать куда то, толи минуту или час. Есть разница. Леонид, чаво ? подробней можно ? ------------ Дoбавленo в 21.46: nesco, вопрос как к Автору компонента: Подскажи, как увеличить высоту окна
|
|||
карма: 25 |
|
Ответов: 8928
Рейтинг: 823
|
|||
Tad, через секунду после "Старт" поле обнуляется и более ничего не происходит
|
|||
карма: 19 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Tad писал(а): как увеличить высоту окнаТю! Тебя что, класс Combo в редакторе сбил с толку code_24557.txt А вот в редакторе, увы -- никак |
|||
карма: 22 |
| ||
файлы: 1 | code_24557.txt [205B] [116] |