Як то раз мені захотілося прикрасити свій софт альфаскінамі, вибрав я значить найкрутіший скін, скомпілював додаток і.
Unregistered skin has been loaded.
If you have a key for this skin, please insert it in the KeyList.
Я був дуже засмучений цією несправедливістю! Який то альфаскін посмів У МОЄМУ софт показувати спливаючі вікна! Ну а тому що я єврей і платити 20 баксів за якийсь скін не має наміру, то вирішив піти іншим шляхом - перехопити це повідомлення взагалі, і в даній статті я напишу як це зробити.
Плюси Delphi в порівнянні з C # та іншими сі - ми можемо творити все що завгодно зі своїм додатком! До речі не тільки зі своїм, взагалі з будь-якими. Можна навіть модифікувати код програми на льоту все десятком рядків! І назріває питання - а навіщо платити якщо можна без праці випиляти це повідомлення при старті? Раз Delphi дає нам такі можливості, то гріх не скористатися!
Робити це потрібно до того як додаток почне виконання, а значить перехоплювати ми будемо на точці входу:
Не мудруючи лукаво я погуглити і знайшов в інтернеті купу інформації з перехоплення, але найстабільнішим виявився метод з правкою таблиці імпорту. Тут все просто: ми створюємо свою функцію яка буде виводити повідомлення на екран (або не виводити в випадку з альфаскіном) і підміняємо стандартну функцію нашої.
Все, тепер ми відновили контроль над своїм додатком і заощадили 20 баксів.