AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Tutorials Delphi WebUpdate, WUS makes it easy
Tutorial durchsuchen
Ansicht
Themen-Optionen

WebUpdate, WUS makes it easy

Ein Tutorial von WebUpdate System · begonnen am 6. Sep 2009
Antwort Antwort
WebUpdate System
Registriert seit: 11. Aug 2009
Inspiriert durch diesen Thread, möchte ich mal ein kleines Tutorial für ein einfaches WebUpdate vorstellen.

Voraussetzungen:
  • Progammiersprache, welche auf .DLL's zugreifen kann
  • WUSDLL.DLL
  • geeigneter Header
Am Beispiel von Delphi (welche Version auch immer), hier Consolenapplikation, da wir es ganz einfach haben möchten, nehmen wir die Zeile

uses ... WUSDLLInterface; mit in die Programmdatei mit auf.

Am Programmstart prüfen wir auf neue Updates

Delphi-Quellcode:
var
  UpdatesAvailable: Integer;
begin
  try
    //Check if Updates available and download the Archives
    UpdatesAvailable := CheckAndDownload(pWideChar(paramstr(0)),
                                         pWideChar(ExtractFilePath(paramstr(0))),
                                         pWideChar('http://localhost/myUpdatelist.WUS'),
                                         pWideChar('1.0.0.0'),
                                         Trunc(now)); //i. e. Present Date as Param
und laden auch gleich die zugehörigen Archive aus dem Netz.

Wenn das Programm beendet wird und wir ausreichend berechtigen haben, so installieren wir die Updates

Delphi-Quellcode:
// Updates available, then install it
  if UpdatesAvailable = 0 then //Updates available and the achives verify is o.k.
   if Check4InstallationRights = 0 then //Authorization is given
    Install(pWideChar(paramstr(0)),
            pWideChar(ExtractFilePath(paramstr(0))),
            pWideChar('http://localhost/myUpdatelist.WUS'),
            pWideChar('1.0.0.0'),
            Trunc(now)) //i. e. Present Date as Param
   else
    ; //Insufficiend privilige
Dazwischen machen wir das, was man mit dem Programm im allegemeinen tut, wir lassen es arbeiten

Das war es auch schon. War doch gar nicht soooo schwer, oder?

Mhhh, jetzt hätten wir doch beinahe das wichtigste vergessen, woher soll das Programm denn wissen, ob Updates vorhanden sind, wo die Archive liegen und welche Dateien wohin installiert werden sollen? Hierzu erstellen wir mit dem Composer die Updateliste, mit den Parametern, Dateien und Verzeichnisinformationen. Diese bringen wir dann zu den Adressen, die hinterlegt sind. Das WUS muß dann nur noch Wissen, wo die Updateliste im Netz zu finden ist (Aufrufparameter). Den Rest kann wird im über die Updateliste mitgeteilt.

So, hoffe mal, das WebUpdate ist jetzt nicht zu kompliziert geworden (3 Zeilen Pascalkode ) Der Download zum WUS (mit Hilfe und Composer) ist hier zu finden. Dort werden auch die Aktualisierungen des WUS gepostet.

Hier noch das ganze (lauffähige) Demoprogramm inkl. Fehlerbehandlung:

Delphi-Quellcode:
program Demo;
{$APPTYPE CONSOLE}

uses
  SysUtils,
  WUSDLLInterface;

var
   UpdatesAvailable: Integer;
begin
  try
    //Check if Updates available and download the Archives
    UpdatesAvailable := CheckAndDownload(pWideChar(paramstr(0)),
                                         pWideChar(ExtractFilePath(paramstr(0))),
                                         pWideChar('http://localhost/myUpdatelist.WUS'),
                                         pWideChar('1.0.0.0'),
                                         Trunc(now)); //i. e. Present Date as Param

    {
      Do Something
    }


// Updates available, then install it
    if UpdatesAvailable = 0 then //Updates available and the achives verify is o.k.
     if Check4InstallationRights = 0 then //Authorization is given
      Install(pWideChar(paramstr(0)),
              pWideChar(ExtractFilePath(paramstr(0))),
              pWideChar('http://localhost/myUpdatelist.WUS'),
              pWideChar('1.0.0.0'),
              Trunc(now)) //i. e. Present Date as Param
     else
      ; //Insufficiend privilige
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
end.
BTW: Die WUSDLL.dll sollte man dem Programm beilegen und in dem selben Ordner ablegen, wie das eigentliche Hauptprogramm.
 
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 14:03 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