AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte [DevProject Manager/PlainEdit] Update Plugin

[DevProject Manager/PlainEdit] Update Plugin

Ein Thema von xZise · begonnen am 14. Sep 2007 · letzter Beitrag vom 8. Aug 2009
Antwort Antwort
Seite 2 von 4     12 34   
Benutzerbild von xZise
xZise
Registriert seit: 3. Mär 2006
Hallo DevProject Manager oder PlainEdit Nutzer!
Nun gibt es endlich eine Möglichkeit ihn zu Updaten!
Update Plugin


Nun die Benutzung ist einfach
Einfach nur auf "Plugins" -> "Search for update..." (Kann abhängig von DevProject Manager/PlainEdit Version und Sprache anders aussehen) gehen und schon kann man DevProject Manager/PlainEdit updaten.

Die aktuelle Version ist: 1.4.2.3

Das Update Plugin hat 2 "Komponenten". Zum einen das Plugin, welches Überprüft, ob ein Update für das Programm verfügbar ist. Dazu lädt er entweder eine Informationsdatei herunter (Ich aktuallisiere die Daten nicht mehr) oder downloadet seit 1.1.0.0 für DevProject Manager und seit 1.2.0.0 für PlainEdit die jeweilige Seite von Gaijin herunter und ließt die Version aus. Sollte ein neues Update vorliegen wird das Plugin ihnen eine Downloadmöglichkeit anbieten.
Dieser Teil ist noch OpenSource.
Die zweite Komponente ist der Updater, welche die Dateien entpackt und kopiert. Da dies sozusagen ein seperates Projekt ist, um es möglich variabel zu gestalten, habe ich noch keine Zeit zum Erstellen einer Seite gefunden. Deshalb habe ich noch nicht den Source Code veröffentlicht.

Das besondere ist, dass eine Portierung zum PlainEdit Plugin so einfach und schnell ging, dass ich beides zusammengeschmissen habe.
Also ein Plugin für zwei Programme ab Version 1.0.0.0.

Leider unterstützt PlainEdit &// DevProject Manager nicht die Verwendung eines seperaten Pluginordners, welches den Vorteil leider auffrisst.
Aber was nicht ist, kann ja noch werden!

Seit der Version 1.1.0.0 gibt es eine Möglichkeit, die Seite von DevProject Manager zu downloaden und die Version dort auszulesen.
PlainEdit wird ab der Version 1.2.0.0 unterstützt.
Standardmäßig ist diese Option aber deaktiviert.
Außerdem ist der automatische Test beim Initalisieren des Plugins nur alle 24 Stunden möglich, sofern Gaijins Website benutzt wird, um unnötigen Traffic zu sparen.
Zusätzlich wird nur eine Versionsdatei ab der Version 1.2.1.0 gedownloadet, um den Traffic niedrig zu halten.

Ab der Version 1.3.0.0 kann das Plugin nun auch andere Plugins updaten.
Damit das Plugin geupdatet werden kann, muss das Plugin die Funktion bereitstellen.

Folgende Sachen sollen noch eingebaut werden:
  • Updater.exe in englisch (Bisher ist nur das Plugin in Englisch)

Und diese Bugs habe ich gefunden und noch nicht beheben können:
  • - keine -

Wenn die installierte Version >= 1.4.0.0 ist, kann das Plugin verwendet werden, ansonsten empfehle ich den separaten Download von meiner Website.

Changelog:
Version 1.4.2.4:
  • [-] - Das Plugin erkennt keine neue Hauptversion (Der Vergleich war falschherum und erkannte nur verwaltete Versionen.)
Version 1.4.2.3:
  • [-] - Updater updatet nicht alles (Der Updater wollte Dateien kopieren, ohne zu testen, ob der Ordner existiert.)
  • - "[...]Wollsen[...]" im Rückmeldungsdialog (Jetzt steht im Rückmeldungsdialog korrekterweise "wollen")
Version 1.4.2.2:
  • [+] - Update einmal täglich wirklich nur einmal täglich (Das Plugin sucht nun wirklich nur einmal täglich, ansonsten wird als Version "Unbekannt" eingetragen)
  • - "Remoteversion" und "Localversion" nicht übersetzt (Sprachdatei wurde erweitert.)
Version 1.4.2.1:
  • [-] Fehler - Updater meldes Update nach Update (Das falsche Archiv wurde hochgeladen, sodass die Version immer noch veraltet war.)
Version 1.4.2.0:
  • Geändert - Dateien werden alle in den Ort der Exe kopiert (Aufgrund eines Fehlers, wurde beim kopieren der Dateien aus dem temporären Ordner nicht die Untepfade verwendet.)
Version 1.4.1.0:
  • Geändert - DevProject Manger verweigert Update Plugin (MkDir konnte das temporäre Verzeichnis anzulegen.)
  • Geändert - Versionsüberprüfung überprüfen (Die Probleme mit der Versionsüberprüfung des Updateplugins und der Hauptanwendung wurden behoben.)
  • Geändert - Fehlerbehandlung (Die Fehlerbehandlung wurde überarbeitet. Zudem auch eine Methode: Die Methode im Plugin die überprüft, ob die Version aus dem Internet neuer ist, kann nun melden, ob ein Fehler aufgetreten ist.)
  • [+] Hinzugefügt - PlainEdit startet sich nicht neu (Statt "Bite schließen sie PlainEdit" kommt nun "Wollen sie PlainEdit beenden, um das Update fertigzustellen". Wenn man nun auf "Ja" klickt, schließt sich PlainEdit. (Das selbe gilt auch für DevProject Manager))
  • [+] Hinzugefügt - Speicherort der temporären Dateien (Das Update überprüft zuerst wo PlainEdit/DevProject Manager seine Daten/Einstellungen speichert, und erstellt in diesem Ordner einen Unterordner Namens "Update" in dem die temporären Dateien zwischengespeichert werden.)
Version 1.4.0.0:
  • [+] Hinzugefügt - Updateliste (Die Updateliste wurde eingeführt sodass Hauptanwendungsupdate und Pluginupdate kaum noch unterscheidbar sind.)
  • Geändert - Neues Layout (Als Ersatz gibt es jetzt, analog zu der Updateliste, eine Liste mit einzelenen Updates. Das Log wurde entfernt: Jedes Update hat ein eigenes Log. Jeder Eintrag ist für sich; das Formular zeigt sie sozusagen nur an. Es gibt immer drei Buttons: Download, Suche nach Updates und Schließen.)
Version 1.3.1.0:
  • [+] Hinzugefügt - Alles ist ein Update (Der Updater unterscheidet nicht mehr so stark zwischen Plugin und Hauptprogramm.)
  • [+] Hinzugefügt - Updateinformationen für die einzelnen Plugins (X_GetInfo hat kann einen neuen Befehl auswerten: $0300 bzw "GPU_GI_UPDATE_FILE". Diese gibt zurück, wie die Updateinformationsdatei heißt.)
  • [-] Entfernt - Updates werden installiert, obwohl sie deaktiviert wurden (Nun sollte das Plugin keine deaktivierten Plugins downloaden.)
  • Geändert - Mit der zweiten Progressbar passiert nichts. (Behoben)
Version 1.3.0.0:
  • [+] Hinzugefügt - Update des eigenen Plugins (Nun kann man in den Optionen, die Option aktivieren, dass man auch die Plugins updaten kann.)
Version 1.2.4.0:
  • [+] Hinzugefügt - Kein Test beim Start wenn Gaijins Website benutzt wird (Nun kann er downloaden, sobald er startet, wenn der letzte Test länger als 24 Stunden her ist.)
Version 1.2.3.0:
  • Geändert - Fehlermeldung, dass ein String kein Integer ist (Da beim Update des Updaters die Einstellungsdatei nicht überschrieben wird, lädt der Benutzer die alte Datei herunter, welche nicht mit den neuem Format konform ist.
    Ab sofort bekommt man eine Fehlermeldung und der String wird geändert.)
  • Geändert - Im Dropdownmenü heißen beide Einträge German. (Das lag daran, dass in der Sprachdatei stand, es wäre eine deutsche Übersetzung.
    Augrund der Bug ID #38 wird es für Version 1.2.3.0 nur eine deutsche und die Native Übersetzung geben.)
  • [-] Fehler - Objekte werden nicht deaktivert bei erneuten Aufrufen (Sobald man "Use Gaijin's Website" auswählt und das speichert, werden die Objekte beim erneuten Anzeigen der Einstellungen deaktiviert.)
  • Geändert - "Use Gaijin's Website" ist nicht übersetzt ("Use Gaijin's Website" wurde nicht übersetzt, da die Sprachdatei nicht immer aktuallisiert wurde.)
Version 1.2.2.0:
  • [-] Fehler - Japanische/Chinesische Zeichen bei Fehlermeldungen (Die fremden Zeichen entstanden aufgrund der Impompatibilität von Ansi- und Widestrings.
    Der Fehler wurde behoben (soweit ich es beurteilen kann))
  • Geändert - Codeinterne Optimierungen (Das Downloaden von neuer Versionsinformationen ist war doppelt vorhanden.)
  • [+] Hinzugefügt - Sucht nicht na dem gestarteten Programm (Wenn die Option Gaijin aktiviert ist, sucht das Plugin automatisch nach dem Update für dem Programm, welches gestartet ist.)
Version 1.2.1.0:
  • Geändert - Trafficsparendere Version der Tests (Er downloadet nicht mehr die ganze Seite, sondern nur noch eine Art "Versionsdatei"!)
Version 1.2.0.0:
  • Geändert - Kein Updatevorschlag bei PlainEdit (Es kann jetzt für beide Programme die aktuelle Version aus der Seite von Gaijin gelesen werden.)
  • Geändert - Updater.exe verhielt sich unter Umständen nicht richtig (Der großteil wurde nochmal programmiert.
    => RAR-Information unterstützung
    => Stabiler)
Version 1.1.0.0:
  • Geändert - Unter Vista werden Adminrechte zum Updaten benötigt (Da das Wort "Update" in einer Blacklist von Vista ist, und kein Vista Manifest eingetragen ist, wollte Vista zum Update Adminrechte.)
  • Geändert - Updater beendet sich nicht nach Abschluss des Updates (Da eine Variable nicht gesetzt wurde, lies er sich nicht beenden.
    Jetzt sollte es funktionieren.)
  • [+] Hinzugefügt - Wenn eine neuere DevProject Manager Version online ist, meldet es sich nicht (Da ich "manuell" die neuere Informationsdatei einstellen musste, meldete er sich nicht.
    Inzwischen downloadet er die Website von DevProject Manager und liest dort die Version aus.)
Version 1.0.0.0:
  • [+] Hinzugefügt - Es werden nur Dateinamen, statt der Sprache in den Einstellungen angezeigt (Ab sofort werden die zusatzinformationen der .mo Datei ausgelesen. Sicherheitshalber werden die Dateinnamen noch angegeben.)
  • [+] Hinzugefügt - Updater Plugin auch für PlainEdit (Es gibt in einer Datei zwei Plugins.)
Version 0.3.3.0 beta:
  • [-] Fehler - Fehlermeldung, wenn keine Internetverbindung (Es erscheint eine Fehlermeldung, wenn keine Internetverbindung vorhanden ist.)
  • Geändert - Man kann keine "native" Sprache auswählen (Ab sofort gibt es ein bessere Verwaltung.
    Man kann die Sprache "Windows" setzen (Windowssprache)
    Wenn man diese wählt, nimmt er die Sprachdatei, welche der Windowssprache entspricht. Ansonsten übersetzt er gar nichts.)
  • [+] Hinzugefügt - Sprache ändert sich nur nach neuinitalisieren des Plugins (Nun werden, zumindest die Formulare, übersetzt, nachdem man die Sprache in den Einstellungen geändert hat.)
Version 0.3.2.0 beta:
  • [+] Hinzugefügt - Fenstertitel enthalten kein Hinweis auf Update Plg (Die Fenstertitel werden zusätzlich ein "[Update Plugin]" als Präfix besitzen.)
  • [+] Hinzugefügt - Updater.exe beendet sich nicht selber nachdem das Update installiert ist. (Nun schließt sich die "Updater.exe" nachdem das Update installiert ist.)
  • [-] Entfernt - Zwei Debugingfenster beim öffnen der Einstellungen. (Die Fenster waren Debugingreste. Sie wurden entfernt.)
  • [+] Hinzugefügt - OK-Button schließt nicht das Einstellungsfenster (Nun kann man das Einstellungsfenster mit "OK" schließen.)
Version 0.3.1.0 beta:
  • [+] Hinzugefügt - Mehrsprachigkeit (Es wurde gnugettext und eine deutsche Sprachdatei eingebaut.)
Version 0.3.0.0 beta:
  • [+] Hinzugefügt - Einstellungen Dialog (Der Einstellen-Dialog ist eingebaut )
Version 0.2.0.0 beta:
  • [+] Hinzugefügt - RAR-Archiv Support (Nun kann direkt die Rar-Datei von Gaijins Seite gedownloadet werden.)
Version 0.1.1.0 beta:
  • [-] Fehler - Beendete sich, wenn keine Verbindung (Aufgrund eines nicht abgefangenen Fehlers wurde das Plugin nicht geladen.
    Nun erscheint eine Fehlermeldung)
Version 0.1.0.0 beta:
  • [+] Hinzugefügt - Funktionalität ()
  • Geändert - Eintrag im "Plugin-Menü" bleibt "Search for Update" bei Verfügbarkeit (Dieser Schönheitsbug wurde behoben.)
ChangeLog erstellt durch DevProject Manager und BBCode Plugin

Links:
Download (803.77 KiB)
Code (54.6 KiB)
Website

Hinweis zur Benutzung von dem Archiv von Gaijin:
Da die Rar-Datei auf Gaijins Webspace die Datei enthält, welche die Plugins (de)aktiviert, müssen alle aktivierten Plugins wieder aktiviert werden! (Dies gilt inzwischen nicht mehr)


Hinweis zur Aktualität der Daten:
Da ich kein sinnvolles Verfahren zum Ermitteln der aktuellen Version gefunden habe, kann es sein, dass der Updater nicht sofort ein Update vorschlägt, weil die Informationsdatei auf den Server liegt.
Dieser Hinweis gilt bis zur Version 1.0.0.0


MfG
xZise
Miniaturansicht angehängter Grafiken
update_348.png  
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
 
C.Schoch

 
Turbo Delphi für Win32
 
#11
  Alt 28. Okt 2007, 10:44
Hi,
Das kann ich auch für XP Prof SP2 bestätigen. Ansonsten funktioniert der Updatevorgang prima .
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

 
Delphi 2009 Professional
 
#12
  Alt 28. Okt 2007, 11:27
Hi,
Nein Ich schreibe nichts in die Registry
Wobei es sein kann, dass die Entpackerkomponenten Zugriff haben wollen.

Und den Fehler kann ich bestätigten, aber muss mir es nochmal genauer angucken, warum er sich nicht schließt.
Normalerweise soll er nämlich auch die Buttoncaption in "Beenden" oder so ändern, was er ja auch nicht tut

MfG
xZise

PS: Zu Vista: Komischerweise benötigt die Updater.exe Adminrechte, aber warum? Ich werde nochmal in dem passenden Forum fragen.
Fabian
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

 
Delphi 2009 Professional
 
#13
  Alt 29. Okt 2007, 16:25
Es gibt endlich ein Update:
Zitat:
Version 1.1.0.0:
  • Geändert - Unter Vista werden Adminrechte zum Updaten benötigt (Da das Wort "Update" in einer Blacklist von Vista ist, und kein Vista Manifest eingetragen ist, wollte Vista zum Update Adminrechte.)
  • Geändert - Updater beendet sich nicht nach Abschluss des Updates (Da eine Variable nicht gesetzt wurde, lies er sich nicht beenden.
    Jetzt sollte es funktionieren.)
  • [+] Hinzugefügt - Wenn eine neuere DevProject Manager Version online ist, meldet es sich nicht (Da ich "manuell" die neuere Informationsdatei einstellen musste, meldete er sich nicht.
    Inzwischen downloadet er die Website von DevProject Manager und liest dort die Version aus.)
Zitat:
Seit der Version 1.1.0.0 gibt es eine Möglichkeit, die Seite von DevProject Manager zu downloaden und die Version dort auszulesen.
PlainEdit wird noch nicht unterstützt.
Um diese Funktion zu nutzen, muss man manuell prüfen.
Fabian
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

 
Delphi 2009 Professional
 
#14
  Alt 23. Dez 2007, 18:38
Wieder bisschen her, aber als Weihnachtsgeschenk präsentiere ich euch:
Version 1.2.0.0:
  • Geändert - Kein Updatevorschlag bei PlainEdit (Es kann jetzt für beide Programme die aktuelle Version aus der Seite von Gaijin gelesen werden.)
  • Geändert - Updater.exe verhielt sich unter Umständen nicht richtig (Der großteil wurde nochmal programmiert.
    => RAR-Information unterstützung
    => Stabiler)
Fabian
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

 
Delphi 2009 Professional
 
#15
  Alt 1. Jan 2008, 18:28
Auf der Website ist nun die Version 1.2.2.0 verfügbar.
Das sind die Änderungen im Überblick:
Version 1.2.2.0:
  • [-] Fehler - Japanische/Chinesische Zeichen bei Fehlermeldungen (Die fremden Zeichen entstanden aufgrund der Impompatibilität von Ansi- und Widestrings.
    Der Fehler wurde behoben (soweit ich es beurteilen kann))
  • Geändert - Codeinterne Optimierungen (Das Downloaden von neuer Versionsinformationen ist war doppelt vorhanden.)
  • [+] Hinzugefügt - Sucht nicht na dem gestarteten Programm (Wenn die Option Gaijin aktiviert ist, sucht das Plugin automatisch nach dem Update für dem Programm, welches gestartet ist.)
Version 1.2.1.0:
  • Geändert - Trafficsparendere Version der Tests (Er downloadet nicht mehr die ganze Seite, sondern nur noch eine Art "Versionsdatei"!)
Fabian
  Mit Zitat antworten Zitat
Gaijin
 
#16
  Alt 1. Jan 2008, 19:19
Hallo xZise!

In den div. Fenstertiteln des Plugins steht auch unter PlainEdit "Update DevProject Manager".

Alle Dateien aus dem Archiv (auch aus den Unterverzeichnissen) wurden in das Programmverzeichnis von PlainEdit entpackt.


Zitat:
Da die Rar-Datei auf Gaijins Webspace die Datei enthält, welche die Plugins (de)aktiviert, müssen alle aktivierten Plugins wieder aktiviert werden!
Die Datei ist schon lange nicht mehr im Download enthalten.

Zitat:
Leider unterstützt PlainEdit &// DevProject Manager nicht die Verwendung eines seperaten Pluginordners, welches den Vorteil leider auffrisst.
Was meinst du damit?
In beiden Programmen können die Plugins im Ordner "Plugins" bzw. einen Unterordner davon enthalten sein.
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

 
Delphi 2009 Professional
 
#17
  Alt 1. Jan 2008, 22:56
Zitat von Gaijin:
Hallo xZise!

In den div. Fenstertiteln des Plugins steht auch unter PlainEdit "Update DevProject Manager".

Alle Dateien aus dem Archiv (auch aus den Unterverzeichnissen) wurden in das Programmverzeichnis von PlainEdit entpackt.
Okay, werde ich mir angucken!
Bestimmt einfach nur vergessen das zu verallgmeinern oder zweideutig ( ) zu machen.


Zitat von Gaijin:
Zitat:
Da die Rar-Datei auf Gaijins Webspace die Datei enthält, welche die Plugins (de)aktiviert, müssen alle aktivierten Plugins wieder aktiviert werden!
Die Datei ist schon lange nicht mehr im Download enthalten.
Da wäre ich mir nicht so sicher Schau dir doch mal das DPM Archiv an

Zitat von Gaijin:
Zitat:
Leider unterstützt PlainEdit &// DevProject Manager nicht die Verwendung eines seperaten Pluginordners, welches den Vorteil leider auffrisst.
Was meinst du damit?
In beiden Programmen können die Plugins im Ordner "Plugins" bzw. einen Unterordner davon enthalten sein.
Naja, dass es einen Pluginordner für beide Programme gibt.

Also du hast z.B. einen "Gaijin Programs"-Ordner mit den Unterordnern "Plugins", "DPM" und "PE". In Plugins sind nun die Plugins für DPM und/oder PE
Das ist nicht bzw. eingeschränkt möglich indem man beide Programme in einen Ordner packt. Was aber auf einen USB-Stick fatal sein kann!

MfG
xZise

PS: Für 1.3.0.0 plane ich ein Update des Plugin selbers.
Fabian
  Mit Zitat antworten Zitat
C.Schoch

 
Turbo Delphi für Win32
 
#18
  Alt 2. Jan 2008, 00:46
Hi,
In der aktuellen Version sind noch ein paar andere Unzulänglichkeiten enthalten
  • Beim Start mit aktivierter Option "Überprüfe auf Updates beim Start" erhalte ich angehängte Meldung.
  • Im Dropdownmenü heißen beide Einträge German.
  • Wenn ich "Use Gaijin's Website" auswähle werden die beiden Labels und Edits sowie die Checkbox "Überprüfe auf Updates beim Start" deaktiviert, bei erneutem Aufruf der Einstellungen sind die Labels und Edits wieder aktiviert.
  • "Use Gaijin's Website" ist nicht übersetzt
Miniaturansicht angehängter Grafiken
updateplugin_268.jpg  
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

 
Delphi 2009 Professional
 
#19
  Alt 2. Jan 2008, 02:09
Danke C.Schoch
Eigentlich wollte ich schon längst schlafen ^^ Aber Bugreports, und dann besonders bei Update Plugin werden sofort überprüft

Und tada:
Version 1.2.3.0:
  • Geändert - Fehlermeldung, dass ein String kein Integer ist (Da beim Update des Updaters die Einstellungsdatei nicht überschrieben wird, lädt der Benutzer die alte Datei herunter, welche nicht mit den neuem Format konform ist.
    Ab sofort bekommt man eine Fehlermeldung und der String wird geändert.)
  • Geändert - Im Dropdownmenü heißen beide Einträge German. (Das lag daran, dass in der Sprachdatei stand, es wäre eine deutsche Übersetzung.
    Augrund der Bug ID #38 wird es für Version 1.2.3.0 nur eine deutsche und die Native Übersetzung geben.)
  • [-] Fehler - Objekte werden nicht deaktivert bei erneuten Aufrufen (Sobald man "Use Gaijin's Website" auswählt und das speichert, werden die Objekte beim erneuten Anzeigen der Einstellungen deaktiviert.)
  • Geändert - "Use Gaijin's Website" ist nicht übersetzt ("Use Gaijin's Website" wurde nicht übersetzt, da die Sprachdatei nicht immer aktuallisiert wurde.)

Sollte es damit Probleme geben: Sofort melden Selbst ich finde nicht alles!

MfG
xZise
Fabian
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

 
Delphi 2009 Professional
 
#20
  Alt 6. Jan 2008, 20:23
Post im PlainEdit Thread

Ich habe extra einen Hinweis darauf gemacht, dass der Download der aktuellen Version, sofern er nicht über Gaijins Website abgewickelt wurde (Konfiguration des Plugins unter PlainEdit), ist nicht immer dofort möglich da auf meinen Server eine von Hand erstellte Version steht.

MfG
xZise
Fabian
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz