![]() |
DFM-Dateien verschlüsseln?
Es nervt mich ein bisschen, dass man mit einem Resourcen-Programm die nackten DFM-Dateien eines Delphi-Programms sehen kann.
Ist es irgendwie möglich diese Dateien zu verschlüsseln oder zu verfremden? |
AW: DFM-Dateien verschlüsseln?
hm... was genau kann man aus der dfm auslesen, was man nicht auch in dem Form anschauen kann wenn man die Anwendung gestartet hat?
|
AW: DFM-Dateien verschlüsseln?
Das Problem ist eigentlich weniger das Auslesen. Eher ist es u.a., dass man alles verändern kann.
Es soll Leute geben die verändern das Formular und Copyright und verticken das Programm anderweitig unter neuem Name/Logo weiter. |
AW: DFM-Dateien verschlüsseln?
Ich habe ein Programm, das verschlüsselt alle Resourcen in der EXE. Beim EXE-Start entschlüsselt die EXE ihre eigenen Resourcen wieder. Ist leider Firmen-Copyright. Keine PAS. Kann aber leicht nachprogrogammiert werden.
|
AW: DFM-Dateien verschlüsseln?
Es sind nicht die nackten DFM drin.
DFMs gibt es als Text (so wird die im Delphi angezeigt und aktuell auch in der Datei gespeichert, aber in der EXE wird die binäre Version gespeichert -> TReader/TWriter) Delphi-Ressource-Editoren übersetzen das natürlich. Man kann die DFM auch selber speichern und über einen TReader manuell die DFM laden, nachdem man sie vorher z.B. entschlüsselt hat und sie vorher verschlüsselt als RC_DATA in die EXE aufgenommen hat. Aber das ist auch egal, denn ich kann zur Laufzeit das sichtbare Formular auslesen und mit daraus eine neue DFM generieren. bzw. die gewünschten Werte aus der Form auslesen, wenn ich da ran kommen will. |
AW: DFM-Dateien verschlüsseln?
Ich könnte mir gut vorstellen, dass solch eine Exe bei vielen Virenprogrammen anschlägt.
|
AW: DFM-Dateien verschlüsseln?
Zitat:
|
AW: DFM-Dateien verschlüsseln?
Es ist nicht selbstverständlich, dass man Summe XYZ für ein Zertifikat ausgibt. Viele, auch ich, haben für solche Späte kein Geld.
Außerdem sind viele, ich ebenfalls eingeschlossen, keine Delphi-Profis und haben von Verschlüsselung Null Ahnung ;) |
AW: DFM-Dateien verschlüsseln?
Du kannst von den DFMs einen HASH generieren (AfterBuild), diesen nach dem Compileren in der EXE/Ressources speichern und bei Programmstart entsprechend reagieren, wenn jemand die DFM manipuliert.
Alternativ erstellst du den Copyright-Hinweis eben erst zur Laufzeit. Die Zertifikate machen das auch nicht viel anders. (außer dass man zusätzlich das Zertifikat noch online verifizieren kann) |
AW: DFM-Dateien verschlüsseln?
Zitat:
Zitat:
Edit ein kleiner Test lädt zwar meine DFM-Resource aber ich bekomme nur 2 Zeilen ausgegeben und die noch mit falschen Zeichen:
Delphi-Quellcode:
// DFM-Resource laden
function LoadTextFromResourceByName(ResourceName: string): string; var ResourceStream: TResourceStream; sl: TStringList; begin if (FindResource(hInstance, PChar(ResourceName), RT_RCDATA) <> 0) then begin ResourceStream := TResourceStream.Create(hInstance, ResourceName, RT_RCDATA); try sl := TStringList.Create; try sl.LoadFromStream(ResourceStream); Result := sl.Text; finally sl.Free; end; finally ResourceStream.Free; end; end; end; showmessage( LoadTextFromResourceByName('TForm1') ); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:22 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz