Ich habe vor kurzem eine meiner Komponenten geändert und es passiert so, dass sie nicht mehr eine der Eigenschaften verwendet, die sie vorher benutzt hat.
Diese Eigenschaften werden jedoch im gesamten Projekt in mehrere .dfm-Dateien geschrieben. Jetzt, wenn ich versuche, das Projekt zu kompilieren, bekomme ich "Fehler beim Lesen.: Eigenschaft & lt; ... & gt; existiert nicht"
Der komplizierte Teil besteht darin, dass der Eigenschaftswert binäre Daten sind (in mehreren Zeilen gespeichert), und ich kann sie nicht einfach mit Delphi replace oder notepad ++ regexp löschen (da sie auf einer einzigen Zeile basieren).
Also meine Frage wäre:
Gibt es Tools von Drittanbietern oder Möglichkeiten zum einfachen Entfernen von Eigenschaften aus mehreren .dfm-Dateien?
Probieren Sie dieses Tool Delphi DFM properties remover
aus, arbeitet mit alten Versionen von Delphi, kann Ihnen aber vielleicht helfen.
Ein möglicher Ansatz besteht darin, Ihre Komponente so zu modifizieren, dass sie diese Eigenschaften ignorieren kann. Auf diese Weise müssen Sie sie nicht in jeder .dfm-Datei suchen.
Zum Beispiel:
%Vor%Die Jedi-VCL enthält ein Tool namens DFMCleaner :
DFMCleaner ist ein Tool zum Entfernen von nicht unterstützten Eigenschaften von DFMs. Ob Sie speichern eine DFM-Datei in einer Version von Delphi und möchten sie in einem verwenden frühere Version, gibt es wahrscheinlich einige nicht unterstützte Eigenschaften in Es erzeugt einen Fehler, wenn das Formular in Delphi geöffnet wird. Was ist gerade? Schlimmer noch, wenn die DFM Teil eines Entwurfszeitpakets ist, wird Delphi Installieren Sie das Paket ohne Fehler, aber wenn Sie versuchen, auf das Formular zuzugreifen zur Entwurfszeit (zB wenn das Formular von einem Eigenschafteneditor verwendet wird), Delphi erzeugt stattdessen einen AV.
Es befindet sich in jvcl-install \ devtools \ DFMCleaner (Projekt mit Quellcode und Beispielkonfigurationsdatei)
Tags und Links regex delphi properties dfm delphi-2006