Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   WebUpdate System (FC III) (https://www.delphipraxis.net/138723-webupdate-system-fc-iii.html)

WebUpdate System 16. Aug 2009 11:00


WebUpdate System (FC III)
 
Die FC (Feature Complete) Versionen sind lauffähig, jedoch noch nicht fehlerbereinigt oder optimiert. Diese dienen zum Test und zur Weiterentwickling des Systems. Die FC Versionen liegen als .EXE, .DLL oder als Komponentenversion für D2009 und D2010 vor. Sie verfügen über die Möglichkeit Archive zu erstellen (Composer), diese zu laden, zu validieren, zu prüfen ob eine neuere Version vorliegt und diese zu Installieren und ggf. ein weiteres Programm im Anschluss (z. B. Installer oder die Applikation) aufzurufen.

Für die Weiterentwicklung sind gerne Mitarbeiter gesucht, welche Codebeiträge liefern, Fehler korrigieren, die Portierung nach D2007, D2006, D7, D6 vornehmen und C/C++ Header für die .DLL bereitstellen. Anregungen und Wünsche sind jederzeit Willkommen.

Das WUS (WebUpdate System) soll es auf einfache Art und Weise ermöglichen, die eigene Anwendung auf dem laufenden zu halten. Dazu kann das WUS Lizenzkostenfrei und ohne Nennung in eigene Anwendungen integriert werden. Wir schliessen jedoch die Gewährleistung und Haftung aus und erwarten, daß; Weiterentwicklungen, Fehlerkorrekturen, etc. wieder in das Projekt zurückfließen, damit das WUS insgesamt verbessert wird und jeder etwas davon hat, welcher das WUS einsetzt.

http://web-update-system.googlecode....20Complete.zip (ca. 3 MB)

Die aktuelle Version ist noch recht Q&D, aber Dank Eurer Hilfe und Kritik werden wir das WUS schon zu der Ultimativen WebUpdate Komponente weiterentwickeln.

Version 20091115[*] DLL Demo an D2006 angepasst[*] Die DLL Funktionen beginnen nun mit einem Underscore "_"
[+] Demo ergänzt um Abfrage ob WUS DLL vorhanden ist[*] DLL auf dynamsiche Linkung Funktionsaufruf umgestellt. DLL muss nun nicht mehr zwingend vorhanden sein
[+] Im Composer wird nun die URL des Archives geprüft[*] Layout des Composers nun auf Tabstrips umgestellt
[+] Mussfelder im Composer nun farbig unterlegt


Aktualisierung 6.9.2009
[+] Manifest der .exe und .dll hinzugefügt[*] ActionDownloadFile gegen URLDownloadToFile getauscht
[+] Bei fehlerhaften Update, werden die Änderungen wieder zurückgenommen[*] Warnungen, neues Threadhandling (D2010) beseitigt[*] Hilfe erweitert
[+] Demo zum WebUpdate und Installation erstellt
[+] Bei der Installation werden nun auch nichtvorhandene Verzeichnisse angelegt
[+] Im Composer "Speichern Unter" Dialog implementiert
[+] Berechtigungsprüfung in .DLL Interface integriert


Aktualisierung 4.9.2009[*] Neue Basisklasse für das WUS eingeführt
[+] Die Archive werden nun nach dem herunterladen, direkt entpackt[*] Binärformat der Archivdatei
[+] Überprüfung der Archivintegrität integriert
[+] Entschlüsselung der Archive beim Download hinzugefügt
[+] Einfache Prüfung der Versionshistorie implementiert[*] Der Executor wurde überarbeitet, es werden neu die ReturnCodes zurückgeliefert[*] Hilfe erweitert um die Updateszenarien[*] Dekomprimierung der Streams auch unter D2006 ermöglicht[*] Schalter für automatischen Download aus Updatemgr, wieder entfernt
[+] Implementation des externen Updates als .EXE, inkl. Dokumentation
[+] Das WUS läuft jetzt auch unter D2010[*] Verschiedene Optimierungen an der internen Struktur des Updaters[*] Fehler im Composer (Fortschreiben und Anzeige des Dateinamens im Archiv) beseitigt
[+] Im Installer den Executor (zur Ausführung von Dateien) implementiert
[+] .DLL Schnittstelle für das WUS implementiert


Aktualisierung 26.8.2009
[+] Der Executor wurde implementiert, aktuell noch ohne Einbindung in den Installer
[+] Hashcode für die Dateien Implementiert
[+] Für das Archiv wird jetzt auch eine Prüfsumme gebildet[*] Die Mengentypen TWUSUpdateModes und TWUSVersionsNumberGets gegen die einfachen Typen ersetzt.
[+] Die Releasenummer als Updatekriterium integriert[*] Routinen welche die Unit Windows verlangen in eine eigene Unit verlagert[*] Aktualisierte CSV Unit für Unicode eingebunden
[+] Loggingklassen implementiert
[+] Logging implementiert
[+] Wird jetzt ebenfalls die Updatelise komprimiert
[+] Dem Archiv wird der Zeitstempel der Updateliste hinzugefügt
[+] Prüfung auf Verfügbarkeit des Internets beim UpdateCheck und Download integriert[*] Es werden nur definierte Dateinamen vergeben[*] Weitere Anpassungen an D2006/TD vorgenommen (Elimation impliziter TypeCasts)[*] Verschiedene Hinweise und Warunungen im Updater beseitigt[*] Verschiedene Optimierungen an der internen Struktur des Updaters

Aktualisierung 19.8.2009
[+] Der Updater kann nun wieder unter D2006/TD kompiliert werden
[+] Die Versionsermittlung über das Erstellungsdatum wird nicht mehr automatisch unterstützt
[+] Statusanzeige für den Logger eingeführt

Aktualisierung 17.8.2009
[+] Die Archive werden nun Komprimiert abgespeichert
[+] Die Logginginformationen auf Ressourcestrings umgestellt
[+] Hilfe in den Composer integriert[*] Dateistruktur angepasst (Versionsinformationen sind nun separat)[*] Bei der Execute Option, können nun auch mehrere Startparameter hinterlegt werden, diese sind durch <RETURN> zu trennen.

sx2008 16. Aug 2009 18:22

Re: WebUpdate System (Gamma II)
 
Etwas zum Logger.
Ich würde daraus 3 Klassen machen:
* eine abstracte Basisklasse mit virtuellen Methoden
* eine FileLogger Klasse
* eine NullLogger KLasse

Delphi-Quellcode:
TWUSLogger = class
  protected
   fLogOpen: boolean;
   procedure  WriteMsg(const aMessage: String); virtual;abstract;
  public
   constructor Create;
   destructor Destroy; override;
   procedure  LogOpen; virtual;
   procedure  LogClose; virtual;
   procedure  LogWrite(const aMessage: String);
 end;

TWUSFileLogger = class
  strict private
  fLogfile: String;
  fLogStream : TStream;
  protected
   procedure  WriteMsg(const aMessage: String); override;
  public
   procedure  LogOpen; override;
   procedure  LogClose; override;
   property   LogFile: String read fLogfile write SetLogfile;
 end;

TWUSNullLogger = class
  protected
   procedure  WriteMsg(const aMessage: String); override; // leere Methode
end;
Damit lässt sich das Logging System später leicht ausbauen.

WebUpdate System 16. Aug 2009 18:33

Re: WebUpdate System (Gamma II)
 
Hallo sx2008,

könntest Du vielleicht eine Implementierung der drei Klassen vornehmen, ich würde diese dann in der Unit entsprechend austauschen.

Btw: für was sind diese drei Klassen gedacht und welche müsste Wissen, wie zu loggen ist?

Aber die Idee ist nicht schlecht, mit dem Empty Logger, so braucht man die Execute Methode nur einmalig zu implementieren und Sie kann auch die aktuelle Applikation mit Benutzerrechten restarten, ohne einen speziellen Logeintrag zu erzeugen.

WebUpdate System 17. Aug 2009 22:48

Re: WebUpdate System (Gamma III)
 
Das Update III des WUS ist nun Verfügbar. Die folgenden Neuerungen wurden implementiert. Der Downloadlink wurde im 1. Post aktualisiert. Hilfreiche Hände, welche gerne mitentwicklen möchten um das Projekt zum Erfolg zu führen, sind gerne gesehen und können sich jederzeit melden.

Aktualisierung 17.8.2009
[+] Die Archive werden nun Komprimiert abgespeichert
[+] Die Logginginformationen auf Ressourcestrings umgestellt
[+] Hilfe in den Composer integriert[*] Dateistruktur angepasst (Versionsinformationen sind nun separat)[*] Bei der Execute Option, können nun auch mehrere Startparameter hinterlegt werden, diese sind durch <RETURN> zu trennen.

WebUpdate System 19. Aug 2009 21:25

Re: WebUpdate System (Gamma IV)
 
Hallo Zusammen,

anbei die aktualisierte Version 20090819 des WUS. Folgendes hat sich geändert:

[+] Der Updater kann nun wieder unter D2006/TD kompiliert werden
[+] Die Versionsermittlung über das Erstellungsdatum wird nicht mehr automatisch unterstützt
[+] Statusanzeige für den Logger eingeführt

Das kompilieren, heißt kompilieren. Es wurde nicht darauf getestet, daß die Widestrings und Ansistrings auch zwischen den Umgebungen funktionieren. Vielleicht könnte dies jemand machen und für etwas D2006/TD kompatibilität sorgen. Der Composer (als .EXE) ist übrigens unter D2009 kompiliert und damit voll Unicodefähig.


Könnte jemand den untenstehenden Code bitte prüfen und verbessern? Er soll aus dem Applikationsdirektory und dem Pfad der neuen Datei den Zielordner ermitteln und zur Verfügung stellen. Beispiel:
AppDir = 'c:\programme\mycompany\mysoftware'
NewFile = 'bin\myNew.Exe'

soll zu
'c:\programme\mycompany\mysoftware\bin\myNew.Exe'

werden. Die Ermittlung des Updatepfads ist ja eine grundlegende Funktion, bitte mal zu prüfen und, falls Fehler, zu berichten und zu verbessern (und hier in diesen Thread posten) danke.

Delphi-Quellcode:
function CombineDirectory(aDirectory, aRelativePath: String): String;
var
  LD: integer;
begin
  result := '';
  while copy(aRelativePath, 1, 3) = '..\' do
  begin
    aDirectory := ExcludeTrailingPathDelimiter(aDirectory);
    ld := LastDelimiter('\', aDirectory);
    Delete(aDirectory, ld+1, length(aDirectory) - ld);
    aRelativePath := copy(aRelativePath, 4, length(aRelativePath) - 3);
  end;

  aDirectory := ExcludeTrailingPathDelimiter(aDirectory);
  if copy(aRelativePath, 1, 2) = '.\' then
    result := aDirectory + '\' + copy(aRelativePath, 3, length(aRelativePath) - 2)
  else
    if not (aRelativePath[1] in ['\', '.']) then
      result := IncludeTrailingPathDelimiter(aDirectory) + aRelativePath
    else
      if aRelativePath[1] = '\' then
        result := aDirectory + aRelativePath;
end;

Der Updatelink, wurde im 1. Post angepaßt.

HiWieGehts 20. Aug 2009 07:29

Re: WebUpdate System (Gamma IV)
 
Hallo WUSler,
schaffe es im Moment zeitlich nicht hier mitzuentwickeln möchte aber das Ganze weiterverfolgen.
Ein paar Ideen/Anregungen:
- In der Hilfe wird empfohlen, die Kongfig-Datein unter .cfg zu speichern. Diese Erweiterung wird aber schon von anderen Programmen verwendet. Mein Vorschlag: z. B. .wus als Erweiterung verwenden. Damit kann diese Erweiterung registriert und durch einen Klick/Doppelklick (je nach Systemeinstellung) im Explorer auf eine KonfigDatei der Composer gestartet werden. Im zugehörigen OpenDlg sollte diese Erweiterung ebenfalls angegeben werden.
- Der Name der aktuellen Konfig-Datei sollte angezeigt werden (z. B. Fenstertitel).
- Dzt. gibt es ein herrliches Durcheinander von Englisch und Deutsch. Vielleicht sollte gleich eine mehrsprachige Entwicklung durchgeführt werden und eine Umschaltung zwischen den Sprachen möglich sein.
- Die beiden Fenster WUS Options und WUS Archive sollten in WUS Composer als TabControl integriert werden und nach Open Config bzw. New Config angezeigt bzw. mit den Daten gefüllt werden.

Das wars vorerst einmal - muss leider abbrechen und mich anderen Dingen zuwenden - z. B. defekter Wasserhahn.

LG

WebUpdate System 20. Aug 2009 21:22

Re: WebUpdate System (Gamma IV)
 
Hallo HiWieGehts,

yep, hab ich mir schon gedacht. Das ganze Projekt leidet etwas, an habe keine Zeit. Mir geht es da leider nicht anders. Aber ich möchte halt mein anderes Projekt mit einer Updatefunktion ausstatten, deswegen bin ich hier noch am rödeln...

Ja, ich empfehle die Endung .CFG für die Konfig Dateien, dies ist aber Geschmackssache und ich möchte hier den Entwickler nicht in seiner Freiheit einschränken. Aber dies kann man selbstverständlich diskutieren. Wenn man ein neues Updatepackage erstellt, empfielt es sich, ein neues Verzeichnis hierfür anzulegen, da die Erstellung der Archive und des Updatefiles in das selbe Direktory kopiert werden. Aber das ist auch dem Entwickler überlassen. Wir können aber gerne über eine solche Funktion, inkl. Registrierung der Dateiendung diskutieren und vielleicht findet sich auch jemand, der dies Implementiert. Also, ich bin in dieser Richtung auch offen.

Aktuell darf man auch nicht vergessen, daß auch die Updateliste (i.a.R.) eine Erweiterung braucht, hierführ nehme ich dann schon mal gern die Endung .WUS ;-) .

Habe auch überlegt, ob es nicht Sinnvoll ist, das Versionsdatum in der Titelleiste mitzuführen. Für die Konfiguration, sehe ich aktuell keinen großen bedarf, da man sich ja hinsetzt um eine spezielle Konfiguration zusammenzustellen, welche man gerne verteilen möchte. Und hier, weiß man doch was man konfigurieren möchte... oder? Wenn jemand findet, daß dies Sinnvoll ist, ist er gerne eingeladen einen entsprechenden Codebeitrag zur Verfügung zu stellen. Alternativ kann dann auch ein neuer, peppiger Composer gepostet werden.

Tja, das Denglish, habe schon angefangen, die Ressourcenstrings in die WUSConstants auszulagen, ist aber noch nicht fertig. Da müsste ja dann auch noch das setzen der Texte erfolgen. Vielleicht könnte dies ja jemand übernehmen und den geänderten Code für den Composer zur Verfügung stellen. Ich bin aktuell am Executor, eines der Herzstücke neben der Routine CombineDirectory. Also aktuell ändert sich am Composer von meiner Seite eher nichts.

Die Umschaltung zwischen verschiedenen Sprachen finde ich eher für den Updater (bei Fehlermeldungen) Sinnvoll, da hier der Endanwender mit den Meldungen konfrontiert wird. Denke für den Entwickler, welcher nur die Konfiguration erstellt und sie dann zur Verfügung stellt, ist es leicher zuzumuten, daß er den Dialog nicht in seiner Muttersprache serviert bekommt, als den Enduser, den das ganze unvorbereitet trifft. Aber natürlich hab ich hier nichts gegen, nur mir fehlt die Zeit und möchte gerne die Grundfunktionalitäten langsam auf die Reihe bekommen.

Stimmt dies wäre eine Idee, die Dialoge in ein PageControll zu packen. Aber ehrlich, ich komme aktuell nicht dazu.

Schöne Grüße

WebUpdate System 26. Aug 2009 22:26

Re: WebUpdate System (Gamma V)
 
Die aktuelle Gamma V bietet einiges an Verbesserungen, wenn auch noch einiges fehlt. Viel wurde im Bereich des Updates gemacht, vorallem einiges an Codeverbesserungen von den Hauptklassen. Der Installer, als Klasse fehlt noch, ebenso wie die .EXE und .DLL Version. Implementiert wurde bspw. die Komprimierung der Dateien und die Hinterlegung eines passenden Hashcodes. Der Timestamp wird zur Verifizierung ebenso in die Archive mit integriert. Der Downloadlink befindet sich im ersten Post.

Aktualisierung 26.8.2009
[+] Der Executor wurde implementiert, aktuell noch ohne Einbindung in den Installer
[+] Hashcode für die Dateien Implementiert
[+] Für das Archiv wird jetzt auch eine Prüfsumme gebildet[*] Die Mengentypen TWUSUpdateModes und TWUSVersionsNumberGets gegen die einfachen Typen ersetzt.
[+] Die Releasenummer als Updatekriterium integriert[*] Routinen welche die Unit Windows verlangen in eine eigene Unit verlagert[*] Aktualisierte CSV Unit für Unicode eingebunden
[+] Loggingklassen implementiert
[+] Logging implementiert
[+] Wird jetzt ebenfalls die Updatelise komprimiert
[+] Dem Archiv wird der Zeitstempel der Updateliste hinzugefügt
[+] Prüfung auf Verfügbarkeit des Internets beim UpdateCheck und Download integriert[*] Es werden nur definierte Dateinamen vergeben[*] Weitere Anpassungen an D2006/TD vorgenommen (Elimation impliziter TypeCasts)[*] Verschiedene Hinweise und Warunungen im Updater beseitigt[*] Verschiedene Optimierungen an der internen Struktur des Updaters

Nach wie vor, werden noch Freiwillige gesucht, welche gerne mitarbeiten, optimieren und testen möchten. Damit das WUS einfach in eigene Anwendungen integriert werden kann und es stabil und zuverlässig läuft.

waldforest 27. Aug 2009 06:16

Re: WebUpdate System (Gamma V)
 
Hallo,
finde das Thema interessant, nutze aber noch delphi7.
Kann (wenn wie) WebUpdate auch unter Delphi7 genutzt werden ?
Ist dies überhaupt
mfg

WebUpdate System 27. Aug 2009 20:18

Re: WebUpdate System (Gamma V)
 
Hallo Waldforest,

prinzipjell sollte es mit wenig Aufwand auch an D7 anpassbar sein. Die Regions müssten entfernt werden, plus eine Routine, welche auf einen Record aufsetzt angepasst werden (Besonderheiten von D2006). Sonst noch, die Externen Standardmodule anpassen (Indy und ZLIB) an jeweils zwei stellen mit einer Compilerdirektive versehen, dann sollte es funktionieren.

So lange nur der Standardzeichensatz verwendet wird, sollte Unicode keine große Rolle spielen. Aber innerhalb von DACH, sollte dies auch nicht relevant sein.

Dann kannst Du es prinzipjell auch für D7 verwenden. Es wurde sonst keine (mir bekannte) Besonderheit von D2006 oder D2009 verwendet, welche das portieren erschwert.

Wenn Du es gerne anpassen möchtest, würd ich dich bitten uns die zugehörigen Anpassungen zur Verfügung zu stellen, damit auch andere das WUS unter D7 verwenden können. Ich selber bin nicht im Besitz von D7 (auch nicht von D2007), so daß ich hier kaum unterstützen kann.

Würde mich freun, wenn das WUS auch unter D7 läuft.

PS: Ansonsten über die .EXE, damit kannst Du dann Unabhängig vom Entwicklungssystem die Updatefunktion benutzen. Zuerst schaue ich aber, daß die Komponentenversion fertig wird

WebUpdate System 4. Sep 2009 19:02

Re: WebUpdate System (FC I)
 
Die FC (Feature Complete) Versionen sind lauffähig, jedoch noch nicht fehlerbereinigt oder optimiert. Diese dienen zum Test und zur Weiterentwickling des Systems. Die FC Versionen liegen als .EXE, .DLL oder als Komponentenversion für D2009 und D2010 vor. Sie verfügen über die Möglichkeit Archive zu erstellen (Composer), diese zu laden, zu validieren, zu prüfen ob eine neuere Version vorliegt und diese zu Installieren und ggf. ein weiteres Programm im Anschluss (z. B. Installer oder die Applikation) aufzurufen.

Für die Weiterentwicklung sind gerne Mitarbeiter gesucht, welche Codebeiträge liefern, Fehler korrigieren, die Portierung nach D2007, D2006, D7, D6 vornehmen und C/C++ Header für die .DLL bereitstellen. Anregungen und Wünsche sind jederzeit Willkommen.

Der Downloadlink ist im 1. Post.

Aktualisierung 4.9.2009[*] Neue Basisklasse für das WUS eingeführt
[+] Die Archive werden nun nach dem herunterladen, direkt entpackt[*] Binärformat der Archivdatei
[+] Überprüfung der Archivintegrität integriert
[+] Entschlüsselung der Archive beim Download hinzugefügt
[+] Einfache Prüfung der Versionshistorie implementiert[*] Der Executor wurde überarbeitet, es werden neu die ReturnCodes zurückgeliefert[*] Hilfe erweitert um die Updateszenarien[*] Dekomprimierung der Streams auch unter D2006 ermöglicht[*] Schalter für automatischen Download aus Updatemgr, wieder entfernt
[+] Implementation des externen Updates als .EXE, inkl. Dokumentation
[+] Das WUS läuft jetzt auch unter D2010[*] Verschiedene Optimierungen an der internen Struktur des Updaters[*] Fehler im Composer (Fortschreiben und Anzeige des Dateinamens im Archiv) beseitigt
[+] Im Installer den Executor (zur Ausführung von Dateien) implementiert
[+] .DLL Schnittstelle für das WUS implementiert

WebUpdate System 5. Sep 2009 10:40

Re: WebUpdate System (FC I)
 
Hallo Zusammen,

was meint Ihr, sollte der .EXE und/oder .DLL ein .Manifest hinzugefügt werden und falls ja, was sollte dies enthalten?

Bin da noch etwas Ratlos, da sie zum einen Teil nur im Benuterraum arbeiten (wo keine zusätzlichen Rechte nötig sind) und zum anderen, bei der Installation, ggf. Administorenrechte benötigt werden. Was meint Ihr?

Nachtrag:
Zitat:

Zitat von waldforest
Kann (wenn wie) WebUpdate auch unter Delphi7 genutzt werden ?

Aktuell über den exteren Updater (WUS.EXE) oder über die DLL Schnittstelle (WUSDLL.DLL). Beide sind sprachneutral und ermöglichen ein Update mit allen Delphi WIN32 C/C++, etc.

Die Komponentenversion, müsste noch nachgearbeitet werden, dies hatte ich aber im vorherigen Post schon erwähnt.

xZise 5. Sep 2009 20:16

Re: WebUpdate System (FC I)
 
Hallo ich habe versucht mir mal den Composer anzugucken, aber der ist irgendwie verwirrend. Ich mein, ein großes Fenster ohne Inhalt :D

MfG
xZise

WebUpdate System 5. Sep 2009 22:20

Re: WebUpdate System (FC I)
 
Hallo xZise,

was meinst Du mit ein großes Fenster? Gibt es da kein Menü? Falls doch, einfach mal F1 dürcken, da werden die Schritte erklärt und was dahinter steht. (1) neue Konfig anlegen/bestehende öffnen, (2) Update Optionen einstellen, (3) Updateliste und Archive definieren, (4) Updateliste und Archive generieren, (5) ggf. Konfiguration speichern (6) manuelles übertragen der Archive und Updateliste auf die verschiedenen Server ;-)

Morgen, oder so, gibts noch 'n easy Tutorial zum einbinden in die eigenen Programme (bishin zu D2 ;-) )

WebUpdate System 6. Sep 2009 08:44

Re: WebUpdate System (FC II)
 
Die FC II (Feature Complete) Versionen sind lauffähig, jedoch noch nicht fehlerbereinigt oder optimiert. Diese dienen zum Test und zur Weiterentwickling des Systems. Die FC Versionen liegen als .EXE, .DLL oder als Komponentenversion für D2009 und D2010 vor. Sie verfügen über die Möglichkeit Archive zu erstellen (Composer), diese zu laden, zu validieren, zu prüfen ob eine neuere Version vorliegt und diese zu Installieren und ggf. ein weiteres Programm im Anschluss (z. B. Installer oder die Applikation) aufzurufen.

Für die Weiterentwicklung sind gerne Mitarbeiter gesucht, welche Codebeiträge liefern, Fehler korrigieren, die Portierung nach D2007, D2006, D7, D6 vornehmen und C/C++ Header für die .DLL bereitstellen. Anregungen und Wünsche sind jederzeit Willkommen.

Der Downloadlink ist im 1. Post.

Aktualisierung 6.9.2009
[+] Manifest der .exe und .dll hinzugefügt[*] ActionDownloadFile gegen URLDownloadToFile getauscht
[+] Bei fehlerhaften Update, werden die Änderungen wieder zurückgenommen[*] Warnungen, neues Threadhandling (D2010) beseitigt[*] Hilfe erweitert
[+] Demo zum WebUpdate und Installation erstellt
[+] Bei der Installation werden nun auch nichtvorhandene Verzeichnisse angelegt
[+] Im Composer "Speichern Unter" Dialog implementiert
[+] Berechtigungsprüfung in .DLL Interface integriert

WebUpdate System 16. Sep 2009 20:40

Re: WebUpdate System (FC II)
 
Mal vorsichtig nachfrägt, ob bislang noch niemand einen Fehler gefunden hat....

gsh 4. Nov 2009 17:05

Re: WebUpdate System (FC II)
 
Hallo,

Ich habe es kurz getestet aber leider überhaupt nicht zum funktionieren gebracht.
Wird es überhaupt noch weiter entwickelt oder ist das Projekt schon eingeschalfen?
Wenn es noch weiter geht dann kann ich es ja mal genau durchtesten.

Wäre schade um das schöne Projekt ... Braue sowas nämlich bald (und sonst muss ich mein nicht so gutes System verwenden).

WebUpdate System 4. Nov 2009 20:24

Re: WebUpdate System (FC II)
 
Hallo Alex,

das Projekt ist leider zu einer One-Man-Show mutiert. Aber es lebt noch :-) . Demnächst wird es ein kleines (kosmetisches) Update geben. Das Hauptfeature ist, dass das Layout des Composers jetzt auf Tabstrips umgestellt ist. Wenn Du Fehler findest, immer her damit (gegen Lösungsvorschläge habe ich natürlich auch nichts).

Wenn Du Fragen hast, um es zum laufen zu bringen, poste einfach hier im Forum. Eine Lösung wird sich dann schon finden :-)

Wie willst Du das WUS eigentlich einbinden (als Komponente, .DLL oder als externe .EXE)? Im ersten Fall, mit welcher Delphi Version arbeitest Du (< D2009 bist musst Du den Composer selbst kompilieren, damit die UniCode Funktion abgeschalten wird [noch nicht auf UniCode umgestellt], sollte Problemlos funktionieren da ich das WUS aktuell unter D2006 weiterentwickle).

Grüße
Greeny

gsh 4. Nov 2009 21:23

Re: WebUpdate System (FC II)
 
Zitat:

Zitat von WebUpdate System
das Projekt ist leider zu einer One-Man-Show mutiert. Aber es lebt noch :-) . Demnächst wird es ein kleines (kosmetisches) Update geben. Das Hauptfeature ist, dass das Layout des Composers jetzt auf Tabstrips umgestellt ist. Wenn Du Fehler findest, immer her damit (gegen Lösungsvorschläge habe ich natürlich auch nichts).

Gibt es dafür einen Grund warum sich das Team aufgelöst hat (Nur so aus Interesse)?
Hab leider das letzte mal vergessen die Fehler aufzuschreiben. Wenn ich das nächste mal Zeit hab schau ich es mir noch mal an und schreib dann alles auf ;)

Zitat:

Zitat von WebUpdate System
Wenn Du Fragen hast, um es zum laufen zu bringen, poste einfach hier im Forum. Eine Lösung wird sich dann schon finden :-)

Wie gesagt wenn ich Zeit hab.

Zitat:

Zitat von WebUpdate System
Wie willst Du das WUS eigentlich einbinden (als Komponente, .DLL oder als externe .EXE)? Im ersten Fall, mit welcher Delphi Version arbeitest Du (< D2009 bist musst Du den Composer selbst kompilieren, damit die UniCode Funktion abgeschalten wird [noch nicht auf UniCode umgestellt], sollte Problemlos funktionieren da ich das WUS aktuell unter D2006 weiterentwickle).

Also beim ersten Versuch bin ich gar nicht erst über den Composer drüber gekommen. Aber am liebsten als Komponente. Da ich meine Anwendungen gerne Portable schreiben ist diese Methode imho besser.
Ich arbeite unter D2006. Aber warum ist es ein Problem wenn der Composer in UniCode kompiliert wurde?

WebUpdate System 4. Nov 2009 22:46

Re: WebUpdate System (FC II)
 
Das war einfach eine Zeitfrage. Mir fehlte zwar auch die Zeit, aber ich brauchte halt auch eine Update Komponente, da hab ich es dann auf der Basis des Konzeptes selbst realisiert. (Leute zum Helfen, sind nach wie vor willkommen :-) )

Der Grund ist einfach, da der aktuelle Composer in UniCode Kompiliert wurde, wenn Du dann die Komponentenversion in D2006 verwendest, ist diese ANSI. Dies kann zu Seiteneffekten führen. Die .EXE und .DLL sind ebenfalls UniCode Versionen und damit Problemlos einsetzbar. Wenn Du allerdings auf Sonderzeichen verzichtest und im Bereich CHR < 127 bleibst, sollte es auch in dieser Konstellation laufen. Kann aber hierfür keine Gewährleistung übernehmen.

Wenn Du noch ein paar Tage abwartest, kommt dann der neue Composer (sieht besser aus), und sollte einfacher zu bedienen sein. Das Format das aktuell erzeugt wird, ist mit dem neuen identisch. Ist also reine Oberflächenauffrischung.

gsh 5. Nov 2009 08:55

Re: WebUpdate System (FC II)
 
Zitat:

Zitat von WebUpdate System
Wenn Du noch ein paar Tage abwartest, kommt dann der neue Composer (sieht besser aus), und sollte einfacher zu bedienen sein. Das Format das aktuell erzeugt wird, ist mit dem neuen identisch. Ist also reine Oberflächenauffrischung.

Ich muss eh zuerst noch eine Funktion in meinem Programm implementieren ... solange hast du Zeit :zwinker:
Danach würde ich die Version nämlich gerne releasen und das eben am besten mit einer Update funktion.

WebUpdate System 15. Nov 2009 14:38

Re: WebUpdate System (FC III)
 
Die FC III (Feature Complete) Versionen sind lauffähig, jedoch noch nicht fehlerbereinigt oder optimiert. Diese dienen zum Test und zur Weiterentwickling des Systems. Die FC Versionen liegen als .EXE, .DLL oder als Komponentenversion für D2009 und D2010 vor. Sie verfügen über die Möglichkeit Archive zu erstellen (Composer), diese zu laden, zu validieren, zu prüfen ob eine neuere Version vorliegt und diese zu Installieren und ggf. ein weiteres Programm im Anschluss (z. B. Installer oder die Applikation) aufzurufen.

Für die Weiterentwicklung sind gerne Mitarbeiter gesucht, welche Codebeiträge liefern, Fehler korrigieren, die Portierung nach D2007, D2006, D7, D6 vornehmen und C/C++ Header für die .DLL bereitstellen. Anregungen und Wünsche sind jederzeit Willkommen.

Der Downloadlink ist im 1. Post.

Version 20091115[*] DLL Demo an D2006 angepasst[*] Die DLL Funktionen beginnen nun mit einem Underscore "_"
[+] Demo ergänzt um Abfrage ob WUS DLL vorhanden ist[*] DLL auf dynamsiche Linkung Funktionsaufruf umgestellt. DLL muss nun nicht mehr zwingend vorhanden sein
[+] Im Composer wird nun die URL des Archives geprüft[*] Layout des Composers nun auf Tabstrips umgestellt
[+] Mussfelder im Composer nun farbig unterlegt

gsh 27. Nov 2009 12:12

Re: WebUpdate System (FC III)
 
Hallo also mein Programm ist nun "Fertig".
Wie versprochen hab ich mir das Update System noch mal angeschaut aber leider kam ich wieder nicht auf einen grünen Zweig.
Deswegen bleibe ich vorerst noch bei meinem System.

Vielleicht kann ich aber doch mal bei der Weiterentwicklung von dem System helfen. Wenn du daran interesse hast dann kannst du mich ja gerne mal anskypen. (Bin zu faul alles abzutippen was mit zu dem Updatesystem einfällt)


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:43 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz