AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Win-Setup Updater - Neue Version
Thema durchsuchen
Ansicht
Themen-Optionen

Win-Setup Updater - Neue Version

Ein Thema von Lord_Stifterl · begonnen am 18. Okt 2004 · letzter Beitrag vom 19. Okt 2004
Antwort Antwort
Lord_Stifterl
Registriert seit: 13. Dez 2002
Hallo liebe DP-Gemeinde,

nachdem ich ja mittlerweile weiß, wie begehrt hier Projekte zum Testen sind, stell auch ich mal eines vor. Es nennt sich Win-Setup Updater.

Was macht dieses Tool:
Mit dem Win-Setup Updater könnt ihr nun auf bequeme Art und Weise Eure Windows-Setupdaten mit dem neuesten ServicePack aktualisieren. Es ist für die nahe Zukunft auch vorgesehen, dass man, sofern gewünscht, auch die Hotfixes mit diesem Tool einbinden kann. Leider steht diese Funktion derzeit noch nicht zur Verfügung.

Was braucht man um mit diesem Tool zu arbeiten:
Einen Computer natürlich . Nein, Scherz bei Seite. Eine Kopie Eurer Windows-Setup-CD auf der Festplatte, viel Speicherplatz, und das gewünschte ServicePack.

Gewährleistung:
Gibts keine. Das Tool wurde ausschließlich mit einer Kopie von Win2k und dem SP4 getestet.

Hoffe euch gefällt das Tool und ich bekomme ein kleines Feedback sowie Anregungen was ich verbessern könnte.

Liebe Grüße und viel Spaß beim Testen
Angehängte Dateien
Dateityp: exe wsu-setup_586.exe (321,2 KB, 18x aufgerufen)
 
MathiasSimmack
 
#2
  Alt 18. Okt 2004, 14:36
  1. Nimm dem Anwender das Kopieren der Windows-CD auch noch ab. Soll heißen: Du sagst dem Anwender, er soll die CD einlegen und fragst nach dem entsprechenden Laufwerk (btw: eine dialoggestützte Auswahl à la [dp]"SHBrowseForFolder"[/dp] wäre bei den ganzen Pfadangaben nicht übel ) und kopierst den Inhalt der CD selbst in einen Ordner.
  2. Startest du das Entpacken des Servicepack (Button "Extrahieren") über ShellExecute? Dann nimm was anderes, weil ich so nämlich dein Programm schließen kann, während das Servicepack noch entpackt wird.
    Gibt man die Pfade übrigens manuell ein (und korrekt ), dann wird der Update-Button nicht aktiviert. Man muss das Servicepack also noch einmal durch dein Programm entpacken lassen, um es letztlich integrieren zu können.
  3. Admin-Rechte beachten! Auch bei der Inventur weigert sich das Update, die Aktion auszuführen, wenn man nur Benutzer ist. Ich habe mir gerade den Kopf zerbrochen, warum es nicht geht. Und dass ich keine Admin-Rechte hatte, war des Rätsels Lösung.
  4. Vielleicht könntest du nach dem erfolgreichen Update das Servicepack-Verzeichnis automatisch entfernen. Gebraucht wird es dann ja nicht mehr.
Generell sage ich, dass die Idee des Tools nicht schlecht ist. Aber du solltest die ganzen Schritte noch vereinfachen. Momentan ist die Bedienung etwas zu umständlich. Die Pfade müssen per Hand eingetippt werden. Hier wäre ein Dialog (wie schon gesagt) besser. Und warum fasst du nicht das Entpacken und die Inventur zusammen? Würde sich doch anbieten.

Fazit: Nicht ganz so kompliziert und umständlich, und es ist durchaus von großem Nutzen.
  Mit Zitat antworten Zitat
Lord_Stifterl

 
Turbo Delphi für Win32
 
#3
  Alt 18. Okt 2004, 15:19
hi Mathias,

ich weiß, dass es hier noch etliches zu verbessern gibt. Ich hab das Tool mit nur relativ wenig Zeitaufwand erstellt. Zu deinen Anregungen:

Dialogunterstütze Pfadauswahl:
Wollte ich grundsätzlich machen, habe jedoch leider nicht dazu gefunden. Werde mir deinen Vorschlag (SHBrowseForFolder) mal ansehen.

Extrahieren:
Die Datei wird über ShellExecute extrahiert. Ich wüsste nicht wie ich das sonst machen sollte.

Zusammenfassen des Entpackens und der Inventur:
Auch dessen bin ich mir bewusst. Beides wird jedoch über ShellExecute gestartet. Wenn ich die Funktionen nun zusammenführe, wird die Inventur gestartet während die Datei noch entpackt wird. Hier liegt also mein Problem.

Gleiches gilt auch für das Löschen der ServicePack-Files. Es ist hier auch schon eine Option vorgesehen, die bei der derzeitigen Version ausgeblendet wurde. Wenn ich die Funktion zum Löschen der Daten ausführe, werden diese gelöscht während noch entpackt wird.

Admin-Rechte:
OK...das hab ich nicht bedacht, wird wahrscheinlich aber nicht anders funktionen.

Kopieren der CD:
Halte ich für einen sehr guten Vorschlag. Werd ich mir mal etwas genauer durch den Kopf gehen lassen.

Also, ich hoffe damit grundlegend auf alle deine Wünsche und Anregungen eingegangen zu sein und würde mich freuen wenn du mir vielleicht zu der einen oder anderen Problemstellung ein wenig helfen könntest. Ich meine damit nicht, dass du für mich programmieren sollst, sondern das du mir wie z.b bei SHBrowseForFolder hin und wieder nen denkansatz geben kannst.

Liebe Grüße und Danke für dein Feedback.
Alex
  Mit Zitat antworten Zitat
MathiasSimmack
 
#4
  Alt 18. Okt 2004, 17:17
So, ich noch mal.

Zitat von Lord_Stifterl:
ich weiß, dass es hier noch etliches zu verbessern gibt.
Kein Problem. Deswegen wirst du ja vermutlich auch um Feedback gebeten haben.

Zitat:
Die Datei wird über ShellExecute extrahiert. Ich wüsste nicht wie ich das sonst machen sollte.
Ist an sich nicht falsch, du solltest nur eine Variante wählen, bei der dein Programm quasi abwartet bis das Entpacken fertig ist. Dadurch kann man es dann auch nicht beenden. Ein paar Suchbegriffe zur Hilfe: [dp]"ShellExecuteAndWait"[/dp]. Assarbad hatte mal so was gepostet. Ansonsten findest du auf der Basis von [dp]"CreateProcess"[/dp] die ein oder andere Variante, die das gleiche macht.

Zitat:
Auch dessen bin ich mir bewusst. Beides wird jedoch über ShellExecute gestartet. Wenn ich die Funktionen nun zusammenführe, wird die Inventur gestartet während die Datei noch entpackt wird. Hier liegt also mein Problem.
Wie gesagt: Nimmst du eine Variante, bei der dein Programm abwartet bis die Dateien entpackt wurden, erledigt sich dieses Problem ganz nebenbei von selbst.

Zitat:
Gleiches gilt auch für das Löschen der ServicePack-Files. Es ist hier auch schon eine Option vorgesehen, die bei der derzeitigen Version ausgeblendet wurde. Wenn ich die Funktion zum Löschen der Daten ausführe, werden diese gelöscht während noch entpackt wird.
*hüstel* ... Ich wiederhole mich nicht noch mal.

Zitat:
OK...das hab ich nicht bedacht, wird wahrscheinlich aber nicht anders funktionen.
Lösung: Rechte abfragen, [dp]"IsAdmin"[/dp] von Nico ist ein guter Ansatz

Zitat:
Halte ich für einen sehr guten Vorschlag. Werd ich mir mal etwas genauer durch den Kopf gehen lassen.
Schön im Windows-Stil: [dp]"SHFileOperation"[/dp].

Ansonsten müsstest du bestimmte Fragen zu bestimmten Dingen noch mal in separaten Beiträgen stellen. Denn hier geht´s ja nur um dein Programm und seinen Funktionsumfang. Programmiertechnische Probleme zu bestimmten Dingen (SHBrowseForFolder, usw.) können wir in extra Threads klären.
  Mit Zitat antworten Zitat
Lord_Stifterl

 
Turbo Delphi für Win32
 
#5
  Alt 19. Okt 2004, 17:18
Hallo liebe Leute,

habe heute einen neue Version des Win-Setup Updater hochgeladen. Bis auf die Abfrage auf die Benutzerrechte wurden alle, im obigen Beitrag besprochenen, Probleme bzw. Verbesserungen ins Programm implementiert.

Über ein Feedback würde ich mich wahnsinnig freuen. Download der Datei ist im ersten Beitrag zu finden.

LG
Alex
  Mit Zitat antworten Zitat
Antwort Antwort


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 09:11 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