Delphi DFM плохой компилятор - PullRequest
0 голосов
/ 01 ноября 2010

Все скомпилированные exe-файлы могут быть декомпилированы (но с некоторыми трудностями), но формы приложения delphi сохраняются в виде dfms внутри exe, что легко можно увидеть (с помощью reshacker) (так легко), могу ли я преодолеть эти проблемы, сначала я подумал о копировании dfmданные для создания процедуры, чтобы я мог скрыть информацию о моей форме.

подскажите мне хорошее решение для этого,

я не люблю использовать компрессоры

, и мое приложение немногобольшой, так что я не могу порт восстановить по одному в DLL.Мне нужно эффективное решение.

Ответы [ 2 ]

10 голосов
/ 01 ноября 2010
Файлы

.dfm не хранятся в формате txt, когда они связаны в окончательный PE-файл. Они преобразуются в тегированный двоичный формат, который помещается в ресурс Windows RCDATA. Для изображений они хранятся в виде необработанного двоичного файла. При создании приложения файлы .dfm могут быть сохранены как текстовые или двоичные файлы (щелкните правой кнопкой мыши конструктор форм, и появится выбор для выбора одного или другого). Это влияет только на формат самого файла .dfm. Он никак не влияет на свой формат, если он связан с вашим последним двоичным файлом.

Вы можете попытаться преобразовать изображения в постоянные массивы (есть много инструментов, которые будут читать двоичный файл и записывать массив decl в различных языковых форматах) и использовать его в качестве включаемого файла. Другое дело, чтобы зашифровать изображения, используя односторонний алгоритм, такой как RSA или PGP. Это не помешает кому-либо расшифровать изображение, но не позволит заменить его, так как у него не будет личного ключа.

1 голос
/ 01 ноября 2010

Если речь идет о защите изображений ваших приложений, вы уже на стороне проигравшего:

https://stackoverflow.com/questions/455623/how-can-i-prevent-users-from-taking-screenshots-of-my-application-window

Всегда можно сделать скриншоты работающего приложения.

...