Autor Beitrag
klausiemausie
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 98

Win XP, Win Vista Ultimate
Delphi 6
BeitragVerfasst: Mi 04.02.09 01:08 
ich habe 36 units, in denen auf ein bestimmtes verzeichnis zugegriffen wird. ich möchte dieses verzeichnis ändern, noch einen überordner hinzufügen. gibt es unter delphi eine funktion mit der ich den quell text per suchen und ersetzen in mehreren units gleichzeitig ändern kann?
danke
gruss klaus
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Mi 04.02.09 01:16 
Wenn du diesen Copde überhaupt in 36 Units ersetzen musst, solltest Du dir dringend dein Programm-Design überlegen. Sinnvoller wäre es hier eher, die betroffene Pfad-Angabe (ggf. auch andere) in eine Funktion auszulagern und dann nur noch diese Funktion aufzurufen. Damit ersparst Du dir diese Arbeit, da du die gesamte Änderung gleich in einem Verzeichnis erledigen kannst. Ferner sollte man Pfadangaben soweit möglich eh nicht hardcoden, sondern als Konstante, oder wie bereits als Funktion zur Verfügung stellen, um so Änderungen einfacher und flexibler zu gestalten.

Alternativ kann u.U. auch intern die Verwendung eines VFS (Virtual File Systems) in einer Anwendung interessant sein, wenn eine ganze Reihe von Verzeichnissen verarbeitet werden muss. In diesem Fall kann man allein über die Pfade des VFS die realen Dateipfade auflösen, brauch diese aber intern in seiner Anwendung nicht weiter zu beachten. Eine Umsetzung eines solchen VFS findest Du z.B. bei Projekt Omorphia.

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19341
Erhaltene Danke: 1752

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 04.02.09 01:39 
user profile iconklausiemausie hat folgendes geschrieben Zum zitierten Posting springen:
ich habe 36 units, in denen auf ein bestimmtes verzeichnis zugegriffen wird. ich möchte dieses verzeichnis ändern, noch einen überordner hinzufügen.
Ist das vielleicht zufällig das Verzeichnis deiner Anwendung oder sowas wie die Anwendungsdaten oder sowas?

Die Frage ist ansonsten vor allem: Was machst du in dem Verzeichnis denn? Normalerweise kann man solche Sachen in einer Klasse kapseln. Zum Beispiel die Einstellungen etc., und dann kannst du die Klasse einfach verwenden. Ggf. kannst du dafür das Singleton Pattern verwenden.

Und user profile iconBenBEs Vorschläge sind natürlich genauso möglich. Es kommt immer auf den Anwendungsfall an.
tshiby
Hält's aus hier
Beiträge: 5

Win 9x, WIN 2000
D7 Pers
BeitragVerfasst: Mi 04.02.09 08:48 
Ich glaube, das Ersetzen über viele Dateien hinweg bringt der freie Editor "Notepad++" ganz gut,
siehe notepad-plus.sourceforge.net.

tshiby
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 04.02.09 14:47 
So was macht man ja auch nicht. Fixe Zeichenketten hinterlegt mal als Konstanten oder wenn sie eventuell lokalisiert werden müssen als Ressourcenstrings.