FinalizationHook

FinalizationHook

Postby aker » 05.03.2013, 10:11

Die Idee des Initialization und FinalizationHooks finde ich super, da jeder dem Downloadlauf eigene Befehle damit hinzufügen kann, ohne das Skript selbst zu verändern.
Beim durchsehen der DownloadUpdates.cmd istnmir jedoch aufgefallen, dass letzterer pro Durchlauf mehr als einmal aufgerufen wird.
Dies geschieht dadurch, dass :DownloadCore mehrfach aufgerufen wird (Z. 828ff). Sobald dieser abgearbeitet ist springt er zu :EoF (erst zu :EndDownload und dann zu :EoF). Unter :EoF wird auch (falls vorhanden) diese cmd aufgerufen. Nach Beendigung des kompletten Durchlaufs (dotnet, win glb, %1 glb, %1 %2 ...) springt das gesamte Programm dann auch wiederunm über :RemindDate zu :EoF und führt den FinalizationHook erneut aus.

Wenn ich den Sinn dieses Skripts richtig verstanden habe, ist jedoch nur die letzttgenannte Verwendung erwünscht.
Darum mein Vorschlag: die Sprungmarke von :EndDownload verändern (nicht mehr :EoF, sondern meinetwegen :EoFd), damit dieses Skript nur ganz am Ende des Downloads ausgeführ wird.

Viele Grüße
Last edited by harry on 05.03.2013, 13:44, edited 1 time in total.
Reason: disabled smilies for this post
Wer Rechtschreibfehler findet, darf sie behalten oder an den Meistbietenden versteigern. / Everybody finding a misspelling is allowed to keep or sell it.
aker

WSUS Offline Update „Community Edition“
https://gitlab.com/wsusoffline/wsusoffline/-/releases
aker
 
Posts: 3999
Joined: 02.03.2011, 15:32

Re: FinalizationHook

Postby WSUSUpdateAdmin » 07.03.2013, 10:18

Moin aker!

Die "Hooks" werden pro Aufruf von "DownloadUpdates.cmd" tatsächlich nur einmal ausgeführt; dieser Effekt hat also nichts mit den internen Subroutinen zu tun, sondern ist durch die Tatsache bedingt, dass "DownloadUpdates.cmd" ggf. vom "UpdateGenerator" mehrfach aufgerufen wird, nämlich einmal pro gewählte Plattform.

Das macht eine Änderung dieses Verhaltens aufwändig, und ich finde es auch vertretbar.

Gruß
Torsten
WSUSUpdateAdmin
Administrator
 
Posts: 2245
Joined: 07.07.2009, 14:38

Re: FinalizationHook

Postby -Iwan- » 07.03.2013, 13:25

Wie wäre es mit einem Once-per-day-Check?
Sowas existiert ja schon für z.Bsp. C++ (Stichwort: same day rule).
Vielleich könnte man sowas in abgeändert Form auch hier für nutzen.
-Iwan-
 
Posts: 364
Joined: 02.11.2009, 17:49
Location: NRW, Germany


Return to Verschiedenes / Miscellaneous

Who is online

Users browsing this forum: Google [Bot] and 84 guests

cron