37414
Goto Top

Spezialist für Delphi und Paradox 5 gesucht gegen Bezahlung

Hallo,

wie ja schon in mehreren Threads beschrieben, haben wir mit einem eigens für uns erstellten Programm immer wieder Probleme.
Der damalige Programmierer hat seine Arbeit für uns schon vor Jahren eingestellt.

Das Programm basiert auf Delphi / Paradox 5

Da die Probleme (Programmabstürze, Datenverluste in Datenbanken, Verluste von Texten etc.) unsere Arbeit erheblich erschweren und fast unmöglich machen, hat unser Vorstand nun entschieden, einen externen Spezialisten zu suchen, der uns ggf. weiterhelfen kann. Natürlich muss dieser Spezialist sich mit Delphi / Paradox 5 auskennen.

Wir sind ansässig in Bonn (Innenstadt) und wären froh, wenn sich hier über dieses Forum Jemand finden würde, der uns weiterhelfen kann.
Das diese Hilfe gegen Bezahlung erfolgt, dürfte sich von selbst verstehen... face-smile

Freue mich auf Eure Antworten.

Danke & schöne Grüße,
imebro

Content-ID: 283668

Url: https://administrator.de/contentid/283668

Ausgedruckt am: 22.11.2024 um 15:11 Uhr

SeaStorm
SeaStorm 23.09.2015 um 10:42:27 Uhr
Goto Top
Ich kenne mich zwar weder mit dem einen, noch mit dem anderen aus, aber ich denke, das eine genauere Beschreibung nicht blöd wäre.
Was macht das Programm so im allgemeinen ( Ist es eine WaWi ? Ein Spiel? Videoplayer ? )
Umfang des Programms, was für eine DB wird eingesetzt etc.

So ein paar Randinfos, um abschätzen zu können, mit was man es denn da zu tun hat und ob man dafür der Richtige ist
Pago159
Pago159 23.09.2015 um 10:58:46 Uhr
Goto Top
Die andere Frage wäre auch,

liegt euch der Quellcode vor? Oder nur das fertige Programm?

Im zweiten Fall, dürfte eine neue Programmierung günstiger werden. Dann wäre auch noch interessant, ob es sich um eine Standalone Software oder eine "Client - Server" Version handelt.
Penny.Cilin
Penny.Cilin 23.09.2015 aktualisiert um 11:11:30 Uhr
Goto Top
Zitat von @SeaStorm:

Ich kenne mich zwar weder mit dem einen, noch mit dem anderen aus, aber ich denke, das eine genauere Beschreibung nicht blöd wäre.
Was macht das Programm so im allgemeinen ( Ist es eine WaWi ? Ein Spiel? Videoplayer ? )
Umfang des Programms, was für eine DB wird eingesetzt etc.

Moin,

wegen der Datenbank steht es doch im Beitrag drin. Es handelt sich um Paradox 5. Paradox war ursprünglich eine Datenbank von Borland.
Wenn ich es verstehe, ist die Anwendung in der Programmiersprache Delphi entwickelt worden, und nutzt Paradox 5 als Daternbank.


Gruss Penny.
NetSonic
NetSonic 23.09.2015 aktualisiert um 11:37:21 Uhr
Goto Top
Moin,

entscheidend ist vor allem: Liegt der Quellcode inkl. der ggf. genutzten "externen" VCL-Komponenten vor? Vielleicht sogar die Komplette Entwicklungsumgebung? Dies ist die Grundvoraussetzung, um überhaupt die Möglichkeit zu haben, Fehler in der derzeit genutzten Programmversion zu beseitigen. Anderenfalls ist das beinahe aussichtslos...

In welcher Delphi-Version wurde denn überhaupt programmiert? Wenn da noch eine Paradox-DB genutzt wurde tippe ich mal so in Richtung Delphi 5...?

Gruß
NetSonic
37414
37414 23.09.2015 aktualisiert um 11:39:24 Uhr
Goto Top
Genau so, wie "Penny.Cilin" es beschreibt, ist es.

Programmiert wurde das Programm in Delphi und die Datenbank ist Paradox 5.

Den Quellcode haben wir leider nicht...

Das Programm erfaßt Anträge mit einem oder mehreren Begünstigten, man kann Alle Daten inkl. Bankverbindungen eingeben, Voranträge einsehen, drucken etc. Ist im Grunde schon recht umfangreich.

Hier die genauen Funktionen zu beschreiben, würde zu weit führen.
Das wäre m.E. erst dann sinnvoll, wenn sich hier Jemand findet, der sich grds. mit Delphi-Programmierung und Paradox 5-Datenbanken auskennt.

Welche Delphi-Version es ist, kann ich nicht sagen.

Danke und Gruss,
imebro
NetSonic
NetSonic 23.09.2015 um 11:48:17 Uhr
Goto Top
Hey imebro,

wenn Ihr eh den Quellcode nicht besitzt, dann ist es auch nicht möglich, am Programm selbst noch etwas zu verändern.
In dem Fall bleibt Euch doch nur, das Programm neu entwickeln zu lassen. Und dafür benötigt Ihr einen Programmierer. Dabei ist es dann unerheblich, ob der nun Delphi bzw. Object Pascal beherrscht oder C#, VB.net o.ä...
Man kann sicherlich die Paradox-Daten noch portieren, aber das ganze Frontend inkl. Funktionalität muss von Grund auf neu erstellt werden.

Gruß
NetSonic
37414
37414 23.09.2015 um 11:57:41 Uhr
Goto Top
Es wird bereits ein neues Programm erstellt seitens einer Firma.

Selbst dort kennt sich niemand mit dem alten Delphi aus bzw. mit den Paradox 5 Datenbanken...

Wir müssen nun aber noch mehrere Monate mit dem jetzigen Programm arbeiten und die Fehler und Datenverluste sind natürlich ein Problem.
Die Hauptdaten lassen sich zwar durch Reparaturen irgendwie immer wieder herstellen, aber Texte etc. eben nicht. Oftmals müssen wir die Arbeit eines halben Tages nochmals abarbeiten, da wir auf den Vortag zurück sichern mußten... das ist natürlich nervig.

Wir dachten halt, dass man auch ohne Quellcode eine Möglichkeit hätte, die Fehler zu beheben, denn das Programm hat ja über Jahre problemlos funktioniert. Jetzt läuft es seit 2 Jahren auf einem Terminalserver (ist aber kein Server-/Client-Programm) und irgendwann tauchten die Probleme auf. Allerdings auch nach einem weiteren Versuch lokal face-sad

Vielleicht findet sich ja doch Jemand hier.... *hoff* face-smile

LG
imebro
NetSonic
NetSonic 23.09.2015 aktualisiert um 12:10:56 Uhr
Goto Top
Fehler im Programm lassen sich ohne Quellcode niemals korrigieren. Egal in welcher Sprache.
Bei der Datenbank sieht das anders aus. Aber Paradox auf einem Terminalserver ist schon mal ziemlich übel. Dafür ist das ganze Konstrukt mit BDE-Datenbanktreiber usw. viel zu alt. Der Server ist dazu auch noch 64bit?! Kein Wunder, dass es da Probleme gibt.
Wie viele User greifen denn gleichzeitig auf die Datenbank zu und welchen Umfang hat die Paradox-DB mittlerweile?

Statt zu versuchen, da jetzt einem "sterbenden" bzw. eigentlich schon "toten" Gaul wieder Leben einzuhauchen, ist es wirklich besser, sich nach einer neuen Lösung umzusehen die auch zukunftsfähig ist.
122990
122990 23.09.2015 um 14:22:45 Uhr
Goto Top
Moin,
Zitat von @37414:
Wir dachten halt, dass man auch ohne Quellcode eine Möglichkeit hätte, die Fehler zu beheben,
Nearly impossible ... gerade wenn es sehr komplex programmiert ist.
Für Delphi gibt es zwar sehr gute Code-Decompiler, aber trotzdem bleibt das eine Herausforderung die bestimmt nicht mehr rentabel und sehr kostenintensiv wäre.
Macht einen sauberen Cut das ist allemal besser und vor allem billiger.

Gruß grexit
37414
37414 23.09.2015 um 14:27:17 Uhr
Goto Top
Danke für die Info.

Ja, der Server ist ein 64bit und ein "Windows Server 2008 R2 Standard".
Es gibt eine Menge verschiedener Datenbanken (z.B. antrag.db / zahlung.db / begünstigte.db.........)
Die größte Datenbank hat lediglich 74 MB Größe.
Maximal 7 Personen würden gleichzeitig auf die DB zugreifen... meist sind es 5 Personen.

Könnte man sagen, dass es nicht klug - oder gar ein Fehler war, dieses Programm auf dem Terminalserver laufen zu lassen?
Die Datenbanken liegen jedoch in einem Verzeichnis auf einem anderen Server (Fileserver).

LG
imebro
122990
122990 23.09.2015 aktualisiert um 14:32:34 Uhr
Goto Top
Zitat von @37414:
Könnte man sagen, dass es nicht klug - oder gar ein Fehler war, dieses Programm auf dem Terminalserver laufen zu lassen?
Absolut, gerade wenn es nicht für den gleichzeitigen Zugriff ausgelegt wurde. Dann kann das sehr schnell zu Inkonsistenzen durch konkurenten Zugriff auf dem TS führen.
Die Datenbanken liegen jedoch in einem Verzeichnis auf einem anderen Server (Fileserver).
Das macht keinen Unterschied, außer das bei einem Netzausfall die Datenbanken zusätzlichen gefährdet sind, wofür sie vermutlich auch nicht ausgelegt worden sind.
NetSonic
NetSonic 23.09.2015 um 14:46:56 Uhr
Goto Top
Da kann ich grexit nur in allen Punkten zustimmen.
Habt Ihr wenigstens schon mal so Standard-Dinge ausprobiert, wie z.B. Virenscanner zu deaktivieren bzw. Ausnahmeregeln für die entsprechenden Verzeichnisse zu definieren? Alternativ gibt es da noch Registry-Einträge für "OpLocks" meine ich. Da musst Du mal googeln nach "Paradox BDE OpLocks" oder so ähnlich. Vielleicht ist da noch ein Tipp dabei. Aber bitte, denkt wirklich darüber nach eine andere Lösung zu suchen. Irgendwann fährt das Ding nämlich komplett vor die Wand und dann ist es zu spät...
37414
37414 23.09.2015 um 15:41:42 Uhr
Goto Top
Danke für Eure Einschätzung.

Wie ja schon geschrieben, haben wir ja bereits ein neues Programm in Auftrag gegeben, aber es dauert noch mehrere Monate, bis die Programmierung fertig ist. Bis dahin wird es nervig sein, mit einem Programm arbeiten zu müssen, das ständig Probleme macht und wo die Mitarbeiter oftmals ihre Arbeit doppelt machen müssen (wegen Rücksicherungen zum Vortag).

Wir haben einen IT-Leiter, der das Programm auf dem Terminalserver erstmals installiert hatte. Vorher lief es bei jedem Mitarbeiter lokal auf dem Rechner (damals noch mit Win XP). Da gab es keine Probleme. Nun arbeiten hier alle mit Win 7 und da hat er das Programm auf den Terminalserver gelegt.

Registry-Einträge für "OpLocks" kenne ich nicht und "Paradox BDE OpLocks" ebensowenig. Da müßte ich tatsächlich zunächst mal googeln. Ob Ausnahmeregeln für die entspr. Verzeichnisse definiert sind, kann ich so auch nicht sagen. Müßte der IT-Leiter aber wissen.

Bis dahin...

LG und danke,
imebro
Pago159
Pago159 23.09.2015 um 15:56:09 Uhr
Goto Top
So ein altes Programm lässt man auch nicht auf einem x64 System zudem noch Terminal Server laufen.
Ich würde an eurer Stelle evtl. auch mal darüber nachdenken, den IT-Leiter zu wechseln, wenn er solch eine Software ohne Support vom Hersteller von Einzelplatz Lösungen zu einer TS-Lösung umbastelt.
Wenn du pech hast, läuft das ganze natürlich nicht auf Win7 sondern nur unter XP, worauf es vermutlich entwickelt wurde.
Hier könntest du im Notfall einen älteren XP-Rechner hinstellen, um die Software darauf laufen zu lassen oder Testweise mal im XP-Modus unter Win7.

Lg Pago
NetSonic
NetSonic 23.09.2015 um 15:59:55 Uhr
Goto Top
Gaaaanz vielleicht wäre natürlich auch noch eine VM-Lösung möglich: Sprich Windows XP als virtuelle Maschine aufsetzen z.B.
Das sind aber alles nur Workarounds und Provisorien, die nach Möglichkeit nicht ewig weiterlaufen sollten, auch wenn Sie für den Moment funktionieren face-wink
Pago159
Pago159 23.09.2015 um 16:03:21 Uhr
Goto Top
@NetSonic Da ja schon die neue Programmierung in Auftrag gegeben ist, wollte ich diese Lösungen (Workarounds) noch schnell erwähnen, da dies bei einer mehr Monatigen Software Programmierung doch noch einige Probleme zu erwarten sind face-wink
Pjordorf
Pjordorf 23.09.2015 aktualisiert um 21:14:43 Uhr
Goto Top
Hallo,

Zitat von @37414:
Programmierung fertig ist.
Und dann muss sich in den darauf folgenden Monaten erst zeigen was alles läuft oder eben noch nicht. Da wirst du wohl noch ein Jahr mit deiner jetzigen Lösung herhalten müssen.

Wir haben einen IT-Leiter, der das Programm auf dem Terminalserver erstmals installiert hatte.
Es war wohl seine Schwärzeste Entscheidung oder will euch kaputt machen face-smile

Vorher lief es bei jedem Mitarbeiter lokal auf dem Rechner (damals noch mit Win XP). Da gab es keine Probleme.
Dann solltest du dir überlegen ob nicht der XP Mode bei euren Windows 7 Büchsen dir helfen kann. XP Mode ist Kostenlos erhältlich - bei MS direkt - inkl. XP Lizenz dazu. Das dürfte 1000 mal (geschätzt face-smile) stabiler laufen als deine jetzige Frickelei und vor allem euren Daten zugute kommen. Evtl. würde ein TS ala Server 2003 (32 Bit) hier schon helfen, ein RDS auf Basis eines Server 2008 und dann Delphi / Borland BDE...... Da gibt es nicht die Frage ob Probleme auftreten können, da stellt sich nur die Frage wann und wie oft.

Nun arbeiten hier alle mit Win 7
XP Mode von MS inkl. der XP Lizenz, oder sind das alles nur Win 7 Home.....

Ob allerdings selbst ein TS auf Server 2003 da noch die Applikation sauber laufen lässt ist trotzdem höchst fraglich.

Gruß,
Peter

Prüfen ob die Hardware es tut
http://www.microsoft.com/en-us/download/details.aspx?id=592

XP Modus herunterladen
http://www.microsoft.com/de-de/download/details.aspx?id=8002

Wie es alles geht
http://windows.microsoft.com/de-de/windows7/install-and-use-windows-xp- ...
37414
37414 24.09.2015 um 09:08:03 Uhr
Goto Top
Vielen Dank für Eure Mühe und für Eure Vorschläge.

Ich finde den Vorschlag der Virtuellen Maschine mit XP ganz interessant.
Ebenso den Vorschlag, einen älteren XP-Rechner hinzustellen, um die Software darauf laufen zu lassen.

Würde es denn funktionieren, diesen XP-Rechner so ins Netzwerk einzubinden, dass er (quasi wie ein kleiner Server) den Zugriff von 5 - 7 Personen auf das Programm zuläßt? Und... würde das auch mit einer Virtuellen Maschine funktionieren (also eine VM einfach auf einem unserer Server installieren mit XP)?

Danke und schöne Grüße,
imebro
122990
122990 24.09.2015 aktualisiert um 09:59:13 Uhr
Goto Top
Würde es denn funktionieren, diesen XP-Rechner so ins Netzwerk einzubinden, dass er (quasi wie ein kleiner Server) den Zugriff von 5 - 7 Personen auf das Programm zuläßt?
Kann man, aber da stößt du vermutlich zu 99 % auf die gleichen Probleme wenn die Anwendung nicht für den gleichzetigen Zugriff auf die DB-Files ausgelegt wurden. Das ist sehr wahrscheinlich auch der Grund warum euch die DBs immer wieder um die Ohren fliegen ...
Pjordorf
Pjordorf 24.09.2015 um 10:38:27 Uhr
Goto Top
Hallo,

Zitat von @37414:
Würde es denn funktionieren, diesen XP-Rechner so ins Netzwerk einzubinden, dass er (quasi wie ein kleiner Server) den Zugriff von 5 - 7 Personen auf das Programm zuläßt?
Wie meinst du dies? das 5-7 Benutzer dort auf die Borland DBs zugreifen von ihren eigenen Clients aus? Das geht sofern nicht mehr als 10 Connections aufgebaut werden welche der XP (Daten Server) dann bedienen muss. Ob deine Anwendung mit nur einer Verbindung pro Client auskommt, kann dir nur der Quellcode zeigen. Ich würd es nicht tun. Da ist ein Server OS oder selbst ein W7 besser. Server OS unbegrenzte Connections, W7 25 Connections. Ob deine Borland DBs allerdings mit den W7 klarkommt.... W7 ungleich XP, da sind doch etliche Änderungen die dort deine Borland DBs himmeln können. Daher auch XP oder Server 2003.

Meinst du allerdings das deine Benutzer auf den XP (Server) die GUI laufen lassen mit 5-7 Personen gleichzeitig? nein, XP kann auch per RDP nur immer eine Sitzung sprich einen Benutzer (Änderungen der Reg oder Hacks hier nicht angenommen). Da ist es doch effizienter wenn die GUI (Delphi) in einer Virtuellen XP Sitzung auf jeden Client (W7) läuft. Damit sollte deine GUI (Anwendung) sauber wieder arbeiten und deine Borland DBs sollten es auch.

Du kannst ja das XP (XP Mode) im Seamless Betrieb nutzen. Ist dann für die Benutzer transparent.
http://www.winfuture-forum.de/index.php?showtopic=189526
https://technet.microsoft.com/de-de/magazine/ff626489.aspx
http://blogs.technet.com/b/germanvirtualizationblog/archive/2009/10/07/ ...
http://blogs.technet.com/b/windows_vpc/archive/2009/08/27/three-modes-o ...
http://consciousvibes.com/wp/windows-7-xp-mode-creating-a-seamless-shor ...

Und... würde das auch mit einer Virtuellen Maschine funktionieren (also eine VM einfach auf einem unserer Server installieren mit XP)?
Klar kannst du eine VM mit XP installieren, nur der Benutzer muss dann per RDP oder VNC oder... darauf zugreifen um seinen Anwendung nutzen zu können, und du brauchst pro Anwender eine eigene VM (XP ungleich Multiuser).

Nutze deine Anwendung im klassischen Stil und deine Probleme dürften verschwinden...

Gruß,
Peter
37414
37414 24.09.2015 aktualisiert um 11:26:04 Uhr
Goto Top
OK... und danke für Eure zahlreichen Tipps!!

Bin zwar jetzt etwas überfordert face-smile aber versuche mal Eure Lösungen zu einer Lösung zusammen zu fassen:

@ "Pjordorf":

Du schreibst: "Da ist es doch effizienter wenn die GUI (Delphi) in einer Virtuellen XP Sitzung auf jeden Client (W7) läuft. Damit sollte deine GUI (Anwendung) sauber wieder arbeiten und deine Borland DBs sollten es auch."

Bedeutet das, dass wir auf allen 5 oder 7 PC´s mit Windows 7 also den XP-Modus installieren sollten und dass dann in dieser virtuellen?? XP-Sitzung das Programm läuft? Die Datenbanken würden aber weiterhin (wie jetzt) auf dem Serverlaufwerk liegen... also auf unserem File-Server?

  • und... kann ich feststellen, wann unser Terminalserver von 2003 auf 2008 upgedatet wurde?

Danke und Gruss,
imebro
Pjordorf
Pjordorf 24.09.2015 um 11:25:56 Uhr
Goto Top
Hallo,

Zitat von @37414:
Bedeutet das, dass wir auf allen 5 oder 7 PC´s mit Windows 7 also den XP-Modus installieren sollten und dass dann in dieser virtuellen?? XP-Sitzung das Programm läuft? Die Datenbanken würden aber weiterhin (wie jetzt) auf dem Serverlaufwerk liegen... also auf unserem File-Server?
Ja, natürlich. Dann hast du das Konzept welches mit Delphi und der Borland DBs wieder hergestellt und damit sollten deine Probleme vom Tisch sein. Du hast ja selbst geschrieben
Vorher lief es bei jedem Mitarbeiter lokal auf dem Rechner (damals noch mit Win XP). Da gab es keine Probleme
Und da gehen wird dann doch davon aus das deine Borland DBs auch dort auf einen Zentralen Server (FS) zu finden waren. (Klassisch halt)

Ob deine Borland DBs auf was anderes als XP/Server 2003 sauber laufen ist von vornherein nicht zu sagen. Dazu sind die Änderungen im OS zwischen Server 2003(R2) zu 2008/2012(R2) oder XP zu Win7 / Win8 / Win 10 einfach zu groß. Da hilft nur testen, tunen, testen, tunen, testen.....

An dem Verhalten deiner Anwendung (GUI) sowie der Borland DBs kannst du ohne Quellcode nichts ändern, also musst du eine Umgebung dafür schaffen. genau hierfür hat MS ja den XP Mode gemacht und auch dafür gesorgt das wer eine Win7 Prof. etc. hat auch eine Kostenlose XP Lizenz mit dem XP Mode (Vorinstalliert und Aktiviert) bekommt.

Gruß,
Peter
37414
37414 24.09.2015 aktualisiert um 12:22:54 Uhr
Goto Top
Vielen Dank nochmals...

Unser IT-Leiter sagt, dass er nicht denkt, dass es am Terminalserver liegt, denn es habe darauf ja ca. 1,5 Jahre funktioniert (mit kaum Fehlern), womit er auch Recht hat.
Ich bin mir nicht sicher... aber es könnte sein, dass ein Update auf dem Terminalserver die Probleme verursacht hat? Könnte ich feststellen, welches Update diese Probleme verursacht hat? Und wenn ja... wie kann ich das feststellen?

LG
imebro
Pjordorf
Pjordorf 24.09.2015 um 12:17:49 Uhr
Goto Top
Hallo,

Zitat von @37414:
Der IT-ler sagt, dass er nicht denkt, dass es am Terminalserver liegt, denn es habe darauf ja ca. 1,5 Jahre funktioniert (mit kaum Fehlern).
Was denn nun? Kaum Fehler oder wie von dir berichtet massive Fehler? Kaum Fehler = nicht weiter beachten, kommt mal vor oder wie von dir "unser System ist absolut instabil und unerträglich"?

wie kann ich das feststellen?
Eure Dokumentationen?
Auf dem System nach alten Logs und Protokollen suchen?
War es eine Inplace Migration dann kannst du vielleicht noch Ereignis Protokolle und Dateien / Ordner mit alten Zeit Stempel, MSInfo kann dir vielleicht das ursprünglichen Installationsdatum anzeigen (MSInfo | find /i "install date")

War es eine Migration auf neues Blech wird davon nichts zu finden sein.
Eventuell ist im AD noch was zu finden (ADSIEdit).....

Gruß,
Peter
37414
37414 24.09.2015 um 12:25:07 Uhr
Goto Top
Hallo Peter,

ich meinte, dass wir in der ersten Zeit (also den ca. 1,5 Jahren), als das Programm auf dem Terminalserver lief, keine oder kaum Probleme hatten. Irgendwann fingen die Probleme dann an...

Mittlerweile haben wir häufig Probleme, müssen manchmal auf den Vortag zurücksichern oder die Datenbanken reparieren, wobei oft unsere Memofelder (Textfelder im Programm) verloren gehen.

LG
imebro
114757
114757 24.09.2015 aktualisiert um 12:34:59 Uhr
Goto Top
Moin zusammen,
den Fehler hier zu finden mit dem geringen Informationsumfang wird wohl kaum Erfolg bringen.
Da muss ein Debugger wie http://www.ollydbg.de/ zum Einsatz kommen mit dem man überprüft ob der Fehler nun am Programm selbst oder im Zusammenspiel mit dem OS herrührt (Assembler-Kenntnisse zwingend erforderlich).

Ansonsten bleibt dir nur Trial & Error und das Ausschlussprinzip.

Gruß jodel32
Pago159
Pago159 24.09.2015 um 12:39:42 Uhr
Goto Top
Seit wann habt Ihr denn jetzt die Probleme?
Wurde etwas an der Konfiguration zu diesem Zeitpunkt geändert, an dem die Probleme auftraten?
Andere Hardware / Software / Updates......?

Habt Ihr evtl Einträge in der Ereignisanzeige?
Am einfachsten wäre es, wenn sich das jemand vor Ort mal anschauen könnte.

Lg Pago
Pjordorf
Pjordorf 24.09.2015 um 12:49:05 Uhr
Goto Top
Hallo,

Zitat von @37414:
Irgendwann fingen die Probleme dann an...
Joa

Mittlerweile haben wir häufig Probleme
Auch Joa.

Vermutlich sind eure Daten (die Borland DBs) mittlerweile so mit Fehlern verseucht das euer Programm (GUI) nicht mehr damit klarkommt und als folge dann Abstürze, Datenverlust usw. zum Tagesgeschäft werden.


oder die Datenbanken reparieren
Wobei nichts Repariert werden kann wenn nichts kaputt ist. Wenn nur falsche Daten (auch Hieroglyphen) falsch sind kann und wird es euer Konstrukt Schreddern. Eine Datenbank Reparatur kann zwar Fehler beheben, aber nicht zwingend alle Daten auf Korrektheit prüfen und korrigieren.

wobei oft unsere Memofelder (Textfelder im Programm) verloren gehen.
Es hat schon Gründe warum wir froh sind das die Borland DBs (BDE) nicht mehr so oft anzutreffen sind face-smile

Gruß,
Peter
mrtux
mrtux 24.09.2015 aktualisiert um 20:18:06 Uhr
Goto Top
Hi!

Wenn man Paradox richtig konfiguriert, kann man es sehr wohl in Multiuserumgebungen verwenden. Bei älteren Delphi Versionen geschieht der Zugriff der Delphi Anwendung auf die Paradox Tabellen über die BDE (Borland Database Engine), wie es der Kollege oben schon erwähnt hat. Die BDE wurde standardmässig von Borland immer mit einem Konfigtool geliefert, mit der man den Multiuserbetrieb (idapi32.cfg) einstellen kann. Dazu wird für alle User ein gemeinsamer Pfad eingerichtet in dem die BDE dann eine Steuerdatei (paradoxusers.net) anlegt über die sie dann den Zugriff der einzelnen User auf die Tabellen regelt und z.B. offene bzw. in Bearbeitung befindliche Datensätze dann für alle anderen User sperrt. Wird diese Pfadeinstellung nicht vorgenommen sind Probleme quasi vorprogrammiert und zumeist werden die Paradox Tabellen im Endeffekt langfristig dadurch zerstört.

Da die BDE mit Datenbank-Aliasen arbeitet, könnte man theoretisch versuchen die Anfragen der Delphianwendung auf einen Datenbankserver (z.B. Interbase) umzuleiten aber ohne Quellcode ist das sicherlich zum Scheitern verurteilt.... ;-(

mrtux
amc-it-services
amc-it-services 25.09.2015 um 09:05:51 Uhr
Goto Top
mrtux hat recht, das duerfte kein Thema sein

desweiteren ist der xp mode fuer diese problematik wohl die beste loesung fuer den user ohne groessere veraenderungen an der it vornehmen zu muessen. bereits erfolgreich fuer aenliche probleme uebergangsweise eingesetzt. natuerlich sollte es etwas zentralisiert angegangen werden und die xp vms sollten keinen internetzugang erlauben

wg terminalserver wuerde ich eine testumgebung installieren der vielleicht eine frische 2008er umgebung ohne patches ist ist, um zu sehen ob man die fehler hier repeouzieren kann. bei multiuser betrieb natuerlich eher etwas schwierig

zu guter letzt gibt es ggf die moeichkeit des reverse engeneerings um die delphi anwendung wieder in quellcode umzuwandeln, und es ggf dann auf eine neuere delphi version zu portieren, ich habe damit keine schlechten erfahrungen gemacht, steht und faellt allerdings mit der komplexitaet des codes und ob fremdanbieter komponenten verwendet wurden.

herzl. gruss
alexander uhde
info@amc-it-services.de
37414
37414 25.09.2015 um 13:09:54 Uhr
Goto Top
Hallo nochmal...

Danke für Eure Mühe.

Die Idee mit der Portierung der Delphi-Anwendung bezieht sich ja sicher eher auf das eigentliche Programm.
Ich habe die Postings bisher so verstanden, dass das Problem wohl eher die Datenbanken sind...
Wäre also ein umswitchen auf eine andere Datenbank eine Lösung?
Dabei ist allerdings ein Problem, dass unsere Memofelder (beschreibbare Textfelder im Programm) verloren gehen oder nicht übernommen werden.
Der Versuch wurde hier auch schon gemacht...
Vielleicht gibt´s dazu ja noch ne Idee von Eurer Seite? face-smile

LG
imebro
mrtux
mrtux 25.09.2015 aktualisiert um 14:27:28 Uhr
Goto Top
Hi!

wie ich oben schon angemerkt hatte, ist auch das ohne den Quellcode quasi zum Scheitern verurteilt.

Es hängt weitest gehend davon ab wie der damalige Entwickler vorgegangen ist. Hat er seine Applikation so gestaltet, dass alle Datenbankobjekte (Abfragen, Tabellen, Felder) dynamisch, also erst zu Laufzeit generiert werden, besteht zumindest eine geringe Chance der Applikation über den BDE Alias eine neue Datenbank "unterzuschieben", denn dann werden auch Abweichungen in der Struktur quasi dynamisch übernommen. Allerdings muss dann die Datenbank-/Tabellen- Struktur offen sein, also z.B. nicht Passwort geschützt oder gar verschlüsselt in der Datenbank abgelegt sein, damit man die Struktur z.B. auf einen Datenbankserver "umziehen" könnte.

Hat der Entwickler jedoch die Datenbankobjekte zur Designzeit erstellt (leider meist die wahrscheinlichere Variante, da die Delphi-IDE das dann quasi automatisch selbst macht und der Entwickler sich viel Arbeit und Zeit spart) ist es quasi unmöglich der Applikation eine andere Datenbank unter zujubeln. Man würde beim Start der Applikation für jedes falsche Datenbankfeld einen Ausnahmefehler (Exception) bekommen. Des weiteren führen die meisten Entwickler beim Start der Applikation eine Prüfung der Datenbank bzw. Tabellenstruktur durch und vergleichen Abweichungen von der, bei der Entwicklung, festgelegten Struktur, die meist in der Form einer Version vorliegt und in der Applikation, in einer Konfigdatei oder in der Windows Registry bei der ersten Installation der Applikation hinterlegt wurde...

Also nochmal, meiner Ansicht nach wird das ohne Quellcode nicht klappen und wenn die Paradox Tabellen Passwort geschützt sind, kannst Du es gleich vergessen....

mrtux
37414
37414 29.09.2015 um 08:40:40 Uhr
Goto Top
Hallo an Alle.

Unser IT-Leiter hat am vergangenen Samstag den "XP-Mode" auf unseren Rechnern installiert inkl. des besagten Programmes, welches wir nutzen und einem Office-Paket 2000 (nur das funktioniert mit unserem Programm).

Ich habe dann gestern Druckereinstellungen angepaßt, Word-Einstellungen und weitere Hilfsprogramme installiert.

Ein erster Test eines Kollegen und von mir selbst verlief ohne Probleme.
Wenn wir jetzt mal so 2 Wochen fehlerfrei arbeiten können, dann denke ich... hat Euer Vorschlag uns geholfen.

Also... bitte alle möglichen Daumen drücken face-wink

Danke für Eure Mühe und schöne Grüße,
imebro
Pago159
Pago159 29.09.2015 um 10:23:29 Uhr
Goto Top
Hallo imebro,

das freut uns, dass wir Helfen konnten. Denkst du bitte noch daran, den Beitrag auf gelöst zu setzen.

Lg Pago
37414
37414 30.09.2015 um 08:01:14 Uhr
Goto Top
Hallo nochmal,

werde den Beitrag jetzt auf gelöst setzen... auch wenn wir ja noch in der Testphase sind face-wink

Danke und Gruß,
imebro
mrtux
mrtux 30.09.2015 aktualisiert um 14:02:49 Uhr
Goto Top
Hi!

Zitat von @37414:
Ein erster Test eines Kollegen und von mir selbst verlief ohne Probleme.
Aber prüfe zur Absicherung nochmals die Einstellungen der BDE, denn wenn ihr dann von mehreren virtuellen Maschinen (XP-Modes) auf den selben Datenbestand zugreifen wollt, sollte zumindest der Parameter bezüglich der paradoxusers.net stimmen und auf allen VMs gleich sein, sonst wird es bald wieder Probleme geben....

mrtux