Я пишу класс для обеспечения безопасности в моем исполняемом файле (проверка серийных номеров, проверка даты испытания и т. Д.). После компиляции исполняемого файла (даже в сборке Release, когда все отладка и генерация RTTI отключены), когда я открываю его в NotePad и ищу имя метода в необработанных данных, я вижу все имена методов, которые собирают мой класс. . В базе кода нет опубликованных членов ни в одном классе.
Это плохо для защиты. Есть ли способ запретить Delphi хранить имена методов в исполняемом файле? Зачем он их вообще хранит, если нет необходимости в RTTI и нет взрыва COM? Есть ли какая-нибудь опция компилятора, контролирующая это?
Может случиться так, что ЛЮБОЙ метод ЛЮБОГО класса в целевом исполняемом файле хранится внутри исполняемого файла в текстовой форме. По-видимому, это вызвано тем, что расширенный RTTI включен по умолчанию для всех классов в Delphi 2010.