Wartung und Fehlerbehebung
Fehler finden und beheben, Abstürze analysieren, die Anwendung an neue Windows-Versionen anpassen. Auch in fremdem Code und ohne den ursprünglichen Entwickler.
- Fehleranalyse
- Bestandscode
- Windows 11
Delphi-Entwicklung · Delphi 1 bis 13 · VCL und FireMonkey
Wir halten Delphi-Anwendungen am Laufen, bauen sie aus und bringen sie auf Delphi 12 oder 13: von Delphi 7 oder 2007 über die Umstellung auf Unicode und 64 Bit bis zur Ablösung der BDE. Wir arbeiten seit 1996 mit Delphi, auch dann, wenn der ursprüngliche Entwickler nicht mehr greifbar ist.
Leistungen
Ob einzelne Fehlerbehebung oder Umstieg auf die aktuelle Version: Wir steigen dort ein, wo Ihre Anwendung gerade steht.
Fehler finden und beheben, Abstürze analysieren, die Anwendung an neue Windows-Versionen anpassen. Auch in fremdem Code und ohne den ursprünglichen Entwickler.
Bestehende Anwendungen um Module, Berichte, Schnittstellen oder Datenbankfunktionen erweitern, passend zur vorhandenen Architektur.
Von Delphi 5, 7, 2007 oder einer XE-Version auf den aktuellen Stand: das Projekt in der neuen Version übersetzbar machen, Komponenten ersetzen, Warnungen abarbeiten und das Verhalten absichern.
Seit Delphi 2009 sind Zeichenketten Unicode, seit Delphi XE2 gibt es 64 Bit. Wir finden die Stellen, an denen sich das Verhalten dadurch ändert, und stellen sie gezielt um.
Die BDE und Paradox-Tabellen ablösen, den Zugriff auf FireDAC umstellen und die Daten auf einen aktuellen Datenbankserver wie MS SQL Server, Oracle oder MySQL übernehmen.
Projektweise Mitarbeit in Ihrem Team, remote aus Raesfeld, wenn Ihnen für Wartung, Migration oder ein neues Modul Delphi-Erfahrung fehlt.
Von Ihrer Version zu Delphi 13
Der Aufwand hängt vor allem davon ab, von welcher Version Sie kommen. Eine erste Orientierung:
| Ausgangsversion | Was typischerweise zu tun ist |
|---|---|
| Delphi 1 | 16-Bit-Programme starten unter 64-Bit-Windows nicht mehr. Die Fachlogik lässt sich meist übernehmen, Oberfläche und Systemaufrufe werden neu aufgebaut. |
| Delphi 2 bis 2007 | Die Umstellung auf Unicode ist der größte Schritt. Dazu kommen Komponenten ohne aktuelle Version und oft die BDE, die seit Delphi XE7 nicht mehr mitgeliefert wird. |
| Delphi 2009 bis XE | Unicode ist erledigt. Es bleiben aktuelle Komponenten und auf Wunsch die Umstellung auf 64 Bit. |
| Delphi XE2 bis 10.4 | Meist überschaubar: aktuelle Komponenten, saubere Darstellung auf hochauflösenden Bildschirmen und neue Compiler-Warnungen. |
| Delphi 11 und 12 | In der Regel ein kleiner Schritt: neu übersetzen, Komponenten aktualisieren, testen. |
Aus der Praxis
Beide Beispiele lassen sich in der neuen Version übersetzen und verhalten sich trotzdem anders als vorher. Genau solche Stellen suchen wir vor der Umstellung gezielt im Quellcode.
In Delphi 7 war ein Zeichen ein Byte. Ab Delphi 2009 ist ein Zeichen zwei Byte groß (UTF-16). Der alte Code lässt sich weiter übersetzen, kopiert aber nur die erste Hälfte der Zeichenkette, und das mit Nullbytes dazwischen. Betroffen sind Dateien, Schnittstellen, Prüfsummen und Verschlüsselung.
// vorher: ein Zeichen = ein Byte SetLength(Puffer, Length(S)); Move(S[1], Puffer[0], Length(S)); // nachher: Kodierung festlegen Puffer := TEncoding.ANSI.GetBytes(S); // oder TEncoding.UTF8, je nach Gegenstelle
Unter 64 Bit ist ein Zeiger acht Byte groß, ein Integer bleibt bei vier. Wer ein Objekt in einem Integer ablegt, verliert die obere Hälfte der Adresse. Der Fehler zeigt sich erst zur Laufzeit, oft als Zugriffsverletzung an ganz anderer Stelle.
// vorher: Objekt im Tag merken KundeEdit.Tag := Integer(Kunde); Kunde := TKunde(KundeEdit.Tag); // nachher: NativeInt passt zum Zeiger KundeEdit.Tag := NativeInt(Kunde); Kunde := TKunde(KundeEdit.Tag);
Vorgehen
Ihre Anwendung läuft weiter, bis die neue Fassung nachweislich dasselbe tut.
Version, Komponenten, Datenbankzugriff und die für Unicode und 64 Bit kritischen Stellen erfassen. Ergebnis: eine Aufwandsschätzung mit Risiken und Reihenfolge.
Das Projekt in der Zielversion übersetzen, Komponenten ersetzen oder aktualisieren, Fehler und Warnungen abarbeiten.
Alte und neue Fassung mit echten Daten vergleichen: Berechnungen, Berichte, Dateien und Schnittstellen. Als ISTQB Certified Tester planen wir diese Tests systematisch.
Einführung nach Ihrem Zeitplan, auf Wunsch mit Parallelbetrieb. Danach übernehmen wir Wartung und Weiterentwicklung.
Warum NordZentrum
Von Delphi 1 bis Delphi 13, mit VCL und FireMonkey. Wir kennen die Eigenheiten der alten Versionen, weil wir mit ihnen gearbeitet haben.
Kein Originalentwickler mehr greifbar? Wir arbeiten uns in gewachsenen Code ein, dokumentieren ihn und bauen verlässlich darauf auf.
Als ISTQB Certified Tester prüfen wir, ob die neue Fassung dasselbe tut wie die alte, bevor sie in Betrieb geht.
Mit Claude Code lesen und dokumentieren wir großen Bestandscode schneller und finden kritische Stellen gezielter. Jede Änderung prüfen und verantworten wir selbst.
Alle Leistungen von NordZentrum → · KI-Beratung und KI-Automatisierung →
Häufige Fragen
Meist ist die schrittweise Migration günstiger und sicherer, weil die über Jahre gewachsene Fachlogik erhalten bleibt und die Anwendung währenddessen weiterläuft. Eine Neuentwicklung lohnt sich eher, wenn sich die Anforderungen grundlegend geändert haben. Nach der Sichtung des Quellcodes können wir beide Wege belastbar vergleichen.
Das hängt vor allem vom Umfang des Codes, von den eingesetzten Komponenten und davon ab, wie oft Zeichenketten als Bytes behandelt werden. Nach der Sichtung erhalten Sie eine Aufwandsschätzung mit den einzelnen Schritten.
Für viele verbreitete Komponenten gibt es aktuelle Versionen. Wo ein Anbieter nicht mehr existiert oder der Quellcode fehlt, ersetzen wir die Komponente durch eine gepflegte Alternative oder durch eigenen Code.
Die BDE wird seit Delphi XE7 nicht mehr mitgeliefert und nicht mehr unterstützt. Wir stellen den Datenzugriff auf FireDAC um und übernehmen die Daten, etwa aus Paradox-Tabellen, in eine aktuelle Datenbank.
Nicht zwingend: 32-Bit-Anwendungen laufen auch unter 64-Bit-Windows 11. Die Umstellung lohnt sich vor allem, wenn die Anwendung viel Arbeitsspeicher braucht oder 64-Bit-Bibliotheken (DLLs) und Datenbanktreiber einbinden muss.
Die VCL ist auf Windows beschränkt. Mit FireMonkey laufen Delphi-Anwendungen auch unter macOS, iOS und Android. Dafür wird die Oberfläche neu aufgebaut, die Fachlogik lässt sich meist übernehmen.
Ja, projektweise und remote. Im Kreis Borken und im Kreis Wesel sind Termine vor Ort nach Absprache möglich.
Kontakt
Delphi-Version, ungefährer Umfang und was sich ändern soll, reichen für den Anfang. Die erste Einschätzung ist unverbindlich.