![]() |
Добро пожаловать, гость ( Вход | Регистрация )
![]() |
-=CHE@TER=- |
![]()
Сообщение
#1
|
Walter Sullivan ![]() ![]() ![]() Группа: Root Admin Сообщений: 1,360 Регистрация: 4-February 08 Пользователь №: 3 Спасибо сказали: 313 раз(а) ![]() |
Delphi programs in API.
На английском. Очень подробно всё описано, плюс есть исходные коды готовых юнитов. Например SmallUtil, в котором есть все частоиспользуемые подпрограммы, и который в размере меньше, чем SysUtils (автор так утверждает - я не проверял). |
![]() ![]() |
-=CHE@TER=- |
![]()
Сообщение
#2
|
Walter Sullivan ![]() ![]() ![]() Группа: Root Admin Сообщений: 1,360 Регистрация: 4-February 08 Пользователь №: 3 Спасибо сказали: 313 раз(а) ![]() |
Я, походу, перестану скоро Delphi пользоваться, во всяком случае VCL компонентами.
И вот из-за чего. Написал одну программу на заказ, довольно сложную, так что для упрощения работы сделал всё на VCL (Delphi 7). Через некоторое время ко мне обращается человек, который сейчас её допиливает и говорит что она зависает в неопределённый момент. Тупо висит и всё. Посмотрел исходные коды и дописал туда логирование. Там суть в том, что вызываются по очереди два таймера (класс TTimer), один останавливается и запускает другой. Хер знает что происходит, но иногда таймер включается (Timer1.Enabled = True) успешно, но тупо стоит. Из-за чего программа виснет, так как не может дождаться когда он сработает. Когда я это обнаружил, то переписал код на WinAPI функции SetTimer() / KillTimer() и зависон пропал. Самое смешное, что код с классом TTimer точно также вис и на последнем Delphi X2 (или как он там называется). Блин, сраные классы, сраные объекты, сраное ООП - такое ощущение, что всё это придумали не только для запутывания в коде программы, но и чтобы программа вообще переставала работать нормально. P.S. Вопрос выше с получением текста из 16-ти битного приложения всё ещё актуален. |
![]() ![]() |
Упрощённая версия | Сейчас: 25th August 2024 - 18:49 |