Цитата:
Сообщение от angvelem
Возможно таймер не успевает отрабатывать код при 100 мСек и код запускается снова.
Application.ExeName уже "знает" имя проекта а ParamStr(0) вычисляет его. Это несколько медленнее.
|
Думаю, дело не в этом.
Тут скорее всего косяк менеджера памяти. При вычислении extractFilePath(...) у тебя каждый раз создается новая строка и под нее распределяется память. Вероятно, в какой-то момент менеждер памяти "просечет", что у него куча неиспользованной памяти, и станет ее переиспользовать.
С другой стороны, у тебя, ну если верить представленному коду, всегда вычисляется одна и та же строка при каждом событии таймера. Можно спросить, А НАФИГА?!! Такие вещи вычисляются один раз при старте программы, а потом просто используется готовое значение.