TAIFUN-Software: Drum prüfen wer ein Update machen möchte, …

… ob nicht noch Zugriffe stattfinden! Neulich ging das Update der TAIFUN-Handwerker-Software bei einem Kunden gehörig daneben, da es noch Zugriffe gab.

Die Ausgangssituation ist ein Terminalserver der gleichzeitig TAIFUN-Server ist. Der überwiegende Teil der Benutzer arbeitet direkt auf dem Terminalserver mit Ausnahme von zwei PCs, von denen aus die Anwendung über das Netzwerk ausgeführt wird.

Offenbar ist es (imho fatalerweise) so, das man ein Update der Software starten kann, obwohl es noch laufende Anwendungen und folglich Zugriffe gibt. Zwar gibt es in TAIFUN selbst wohl eine Möglichkeit angemeldete Benutzer zu sehen, aber allem Anschein nach ist das nicht unbedingt zuverlässig.

Jedenfalls nachdem unser Kunde das Update trotz der ihm bis dato unbekannten Zugriffe durchgeführt hatte und es dabei zu einigen Zugriffsverletzungen gekommen war, startete die Anwendung nicht mehr.

An dieser Stelle kam Notfall-mäßig ich ins Spiel. Ein Blick in den Task-Manager zeigte noch einige laufende “tfw.exe”-Prozesse diverser Benutzer. Die RDP-Sitzungen als solches waren teilweise getrennt, teilweise aktiv (ohne das jemand noch vorm Thin Client saß) und der mündlichen Übergabe des Kunden nach gab es kein sichtbares TAIFUN-Fenster mehr.

Denkbar ist zu diesem Punkt, das die Anwendung nicht richtig beendet, d.h. sichtbar ist zwar nichts mehr, aber im Hintergrund bleibt ein Prozess hängen. Die meisten Anwender kennen ein solches Verhalten beispielsweise von Outlook.

Jedenfalls konnte die Situation ohne Restore des Backups dahingehend gelöst werden, das ein Beenden der “tfw.exe”-Prozesse und ein erneutes Ausführen des Updates aus “C:\TAIFUN\Updates” heraus die Anwendung wieder ans Laufen brachte. Glück gehabt.

Damit für die Zukunft vorab auf Betriebssystemebene einfach geprüft werden kann, ob die Anwendung noch irgendwo läuft, wurde kurzerhand ein kleines Batch-Skript erstellt, das sowohl lokale als auch über das Netzwerk gestartete “tfw.exe”-Prozesse anzeigt:

@echo off

title Wird TAIFUN noch ausgefuehrt?

cd "C:\Skripte\TAIFUN"

echo Auf dem lokalen Computer ausgefuehrte TAIFUN-Instanzen:

 tasklist /v /fi "IMAGENAME eq tfw.exe"

echo. 
echo ---
echo.
echo Via Netzwerk ausgefuehrte TAIFUN-Instanzen:
echo.
 
 net file | find /i "tfw.exe"

echo.
pause

Die entspreche Ausgabe sieht dann so aus:

Auf dem lokalen Computer ausgefuehrte TAIFUN-Instanzen:

Abbildname PID Sitzungsname Sitz.-Nr. Speichernutzung Status Benutzername CPU-Zeit Fenstertitel
========================= ======== ================ =========== =============== =============== 
TFW.exe 9700 RDP-Tcp#1 3 215.528 K Unknown WTS02\<Benutzername>  0:03:29 Nicht zutreffend
TFW.exe 11732 RDP-Tcp#2 4 312.416 K Unknown WTS02\<Benutzername> 0:22:24 Nicht zutreffend
TFW.exe 14492 RDP-Tcp#3 5 263.112 K Unknown WTS02\<Benutzername> 0:24:33 Nicht zutreffend
TFW.exe 23540 Services 0 116.572 K Unknown WTS02\Administrator 0:00:03 Nicht zutreffend

---

Via Netzwerk ausgefuehrte TAIFUN-Instanzen:

1879048362 C:\TAIFUN\TFW\TFW.EXE <Benutzername>                 0

Drücken Sie eine beliebige Taste . . .

So sieht man auf einen Blick, wo noch etwas läuft und kann beispielsweise mit dem Task-Manager und auf den lokalen PCs entsprechend eingreifen.

Interessant im Zuge der Tests und auch in der Ausgabe zu sehen ist eine “tfw.exe” die im Rahmen von “Services”, also der Diensteverwaltung, als Administrator zeitweise ausgeführt wird. Vermutlich handelt es sich entweder um eine geplante Aufgabe oder einen Dienst der bei Bedarf läuft. Diese Erkenntnis hat durchaus Relevanz, da es während eines TAIFUN-Updates es trotz aller beendete Zugriffe zu einem Fehler kommen kann, da plötzlich doch wieder eine “tfw.exe” läuft.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.