Umbruch bei Verwendung von getOutStreamFromSection()

Antworten
othiman
Beiträge: 126
Registriert: 09 Sep 2009, 14:15
Wohnort: Aachen, Germany

Umbruch bei Verwendung von getOutStreamFromSection()

Beitrag von othiman »

Hallo zusammen.

Ich hole mal etwas weiter aus, damit mein Problem auch jeder nachvollziehen kann:

Bei uns tritt bei Rechnern, auf denen der opsi-Client nachträglich installiert wurde, häufig das Problem auf, dass sich Software nicht richtig deinstallieren lässt. Dies liegt daran, dass die auf dem jeweiligen System installierte Version recht alt ist und damit das Deinstallationsskript bzw. der entsprechende "MSI-Uninstallstring" nicht stimmen. Um dieses Problem zu umgehen bzw. nicht so lange Listen wie bei der Deinstallation das java-vm Paketes zu bekommen, habe ich mir folgendes System überlegt:
Als erstes werden mittels

Code: Alles auswählen

start /wait "" REGEDIT /E %Systemdrive%\TMP\registry.tmp HKEY_LOCAL_MACHINE\SOFTWARE\microsoft\windows\currentversion\uninstall
alle Uninstall Keys aus der Registrierungsdatei ausgelesen und anschließend mit

Code: Alles auswählen

type %Systemdrive%\TMP\registry.tmp | find /i "{" | find /i "}]"
die Einträge ausgefiltert, die die geschwungenen Klammern enthalten. Aus diesem Ergebnis soll danach der Displayname ausgelesen werden und mit einem String-Vergleich herausgefunden werden, ob ein Paket mit dem vorgegeben Namen installiert ist. Ist dies der Fall wird aus dem Uninstall Command der "MSI-Uninstallstring" ausgelesen und damit die Software deinstalliert.

Nun stoße ich auf folgendes Problem: Beim Ausführen des zweiten Kommandos werden die Registrierungsschlüssel in der Konsole ausgegeben und ich möchte diese mit der getOutStreamFromSection()-Funktion in einer String-Liste auffangen und weiterverarbeiten. Allerdings wird die Ausgabe statt in einem Eintrag nach 40 Zeichen abgebrochen und der Rest in einen zweiten Listeneintrag gespeichert. Ich vermute, dass dies am Umbruch in der DosBox liegt!? Kann das jemand bestätigen oder liegt hier ein anderes Problem vor?

Ich kann natürlich die String-Liste durchgehen und aus 2 Strings wieder einen machen, aber so wird es dann leider ganz schön unübersichtlich... Vielleicht hat jemand ja ne bessere Idee!?

Gruß,
Thomas
othiman
Beiträge: 126
Registriert: 09 Sep 2009, 14:15
Wohnort: Aachen, Germany

Re: Umbruch bei Verwendung von getOutStreamFromSection()

Beitrag von othiman »

Hallo,

hab das Problem jetzt erstmal umgangen indem ich zwei Strings aus der Liste zusammenkopiere. Wen es interessiert kann ein Beispiel anhand von TortoiseSVN hier finden: https://forum.uib.de/viewtopic.php?f=6& ... ddc8be22e6.

Jeder Vorschlag zur Verbesserung oder Erklärung des Problems würde mich aber trotzdem freuen. Das Skript ist so schon ziemlich unübersichtlich.

Gruß,
Thomas
Benutzeravatar
r.roeder
uib-Team
Beiträge: 540
Registriert: 02 Jul 2008, 10:08

Re: Umbruch bei Verwendung von getOutStreamFromSection()

Beitrag von r.roeder »

Hallo,

normalerweise bricht getOutStreamFromSection nicht nach 40 Zeichen um. Wie sieht denn die Ausgabe der Dos-Kommandos aus, wenn direkt in einer Cmd-Fenster aufgerufen?

Gruß,

R. Röder


Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.

Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.

uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de


othiman
Beiträge: 126
Registriert: 09 Sep 2009, 14:15
Wohnort: Aachen, Germany

Re: Umbruch bei Verwendung von getOutStreamFromSection()

Beitrag von othiman »

Hallo,

ich hab mal die Ausgabe des Skripts (ergänzt um ein "pause" am Ende um die Ausgabe sehen zu können) als JPEG angehängt. Da ist der Umbruch an einer anderen Stelle als bei Aufruf des Opsi-Skripts. (Im Skript wird die Ausgabe nach dem w von windows geteilt.)

Vielleicht hat das Ganze aber ja auch eine andere Ursache. Das mit dem Umbruch war nur so ne Idee von mir...

Gruß,
Thomas
Benutzeravatar
d.oertel
uib-Team
Beiträge: 3327
Registriert: 04 Jun 2008, 14:27

Re: Umbruch bei Verwendung von getOutStreamFromSection()

Beitrag von d.oertel »

Hi,

ich habe auch schon merkwürdige Umbrüche in diesem Kontext gesehen.
Ich empfehle daher dringend eine 'DosBatch' Sektion deren Ausgaben eingefangen werden sollen zu beginnen mit:

Code: Alles auswählen

@echo off
Das hat bei mir in der Regel das Problem gelöst.

gruss

d.oertel


Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.

Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.

uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de


othiman
Beiträge: 126
Registriert: 09 Sep 2009, 14:15
Wohnort: Aachen, Germany

Re: Umbruch bei Verwendung von getOutStreamFromSection()

Beitrag von othiman »

Hallo,

danke für die Antwort. Das

Code: Alles auswählen

@echo off
ist bereits im Skript integriert und bringt leider keine Abhilfe. Gibt es vielleicht noch einen anderen Trick?

Gruß,
Thomas Schlien
Benutzeravatar
d.oertel
uib-Team
Beiträge: 3327
Registriert: 04 Jun 2008, 14:27

Re: Umbruch bei Verwendung von getOutStreamFromSection()

Beitrag von d.oertel »

Hi,

der neue Winst aus Testing sollte das Problem fixen.
siehe:
viewtopic.php?f=1&t=1128
http://download.uib.de/opsi3.4/testing/ ... 3.5-1.opsi

gruss
d.oertel


Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.

Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.

uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de


othiman
Beiträge: 126
Registriert: 09 Sep 2009, 14:15
Wohnort: Aachen, Germany

Re: Umbruch bei Verwendung von getOutStreamFromSection()

Beitrag von othiman »

Hi,

ich werde das auf jeden Fall mal testen. Wahrscheinlich komme ich aber erst im neuen Jahr dazu.

Viele Grüße,
Thomas Schlien
othiman
Beiträge: 126
Registriert: 09 Sep 2009, 14:15
Wohnort: Aachen, Germany

Re: Umbruch bei Verwendung von getOutStreamFromSection()

Beitrag von othiman »

Hallo,

ich hatte heute endlich Zeit die neue Winst Version zu testen und es funktioniert einwandfrei. Vielen Dank dafür!

Viele Grüße,
Thomas Schlien
Antworten