 |
Doctor Deploy: software deployment, - distribution, repackaging, msi, windows installer, client management, installation, setup : forum - discussion boards
|
| Author |
Message |
Tom
Piccolo

Joined: 27 Jun 2004
Posts: 5
|
Posted:
Mon, 12.Jul.2004, 07:36 |
 |
Hallo Theo,
wie du weißt benutze ich WinRobots schon seit einiger Zeit und bin sehr zufrieden damit. Meist kann ich meine Probleme unter Verwendung der Bedienerhilfe selbst lösen.
Im Moment habe ich jedoch ein Problem auf dessen Lösung ich nicht komme: Ich möchte aus einem Listenfeld einen bestimmten Eintrag heraussuchen, von dem ich nur Teile der Zeichenfolge kenne, z.B ein paar Zeichen am Anfang und am Schluß.
Ich habe mir überlegt, daß man vielleicht mit FES\ (ForEachSysListViewItem) und LIT\ (ListItemText) die einzelnen Einträge der Liste ausliest, dann mit GFS\ (GetFromString) einen Substring bildet und diesen dann mit meiner Musterzeichenfolge vergleicht.
Könnte das so funktionieren oder gibt es vielleicht noch einen eleganteren Weg?
Gruß
Thomas |
Last edited by Tom on Mon, 12.Jul.2004, 12:13; edited 1 time in total |
|
  |
 |
theogott
Jeroboam


Joined: 14 Jun 2004
Posts: 78
Location: Karlsruhe * Germany
|
Posted:
Mon, 12.Jul.2004, 08:42 |
 |
Hallo Tom,
gut, dass du mir auch per e-mail mitgeteilt hast dass du deine Frage hier stellst, sonst hätt' ich es nicht gefunden da ich dieses Topic nicht überwache.
Für evtl. andere Leser die an Scripting interessiert sind muss ich ergänzend dazu sagen, dass ich zuvor mit Tom vereinbart habe, dass wir "nicht eilige" Fragen hier via Forum posten, so dass von der Beantwortung auch andere WR-Script-Anwender profitieren können.
Jetzt zur Antwort:
1. Du hast ein Listview/Treeview/Listbox und möchtest wissen ob ein bestimmter Eintrag darin überhaupt vorhanden ist:
Nehmen wir als Beispiel mal einen Firmennamen einer Firma die ausgezeichnete Set-Top-Boxen herstellt für Ärzte, Wartezimmer etc. wir wissen aber nur die ersten und die letzten Buchstaben des Namens: "Val-??-Media".
Dann kannst du einfach die Listbox/Listview/Baumansicht lokalisieren und mit IEI\(IfExistItem) schreiben:
IEI\Val||Media
; hier kommt was passieren soll wenn der Eintrag vorhanden ist
; der erste passende Eintrag ist automatisch lokalisiert
ELSE
; hier kommt was passieren soll wenn der Eintrag nicht vorhanden ist
EEV\
das abfragen.
Beachte den UND-Operator "||" zwischen den beiden Teilstrings. Der Operator geht generell bei fast allen Befehlen. Darüberhinaus gibt es auch noch ODER und NICHT-Operatoren. Auf der IEI-Hilfeseite ist ein Link zu "Suchbegriffe" wo man die Erläuterung dazu findet.
Und was, wenn du nun mehrere Einträge hast, die passen und du suchst nicht den ersten. Das geht auch:
Aus der Hilfe zu IEI\:
Weiterhin können Sie bei mehreren gleichen Elementen in der Zielebene nach einem bestimmten Element suchen, indem Sie nach dem Item einen Senkrechtstrich und eine Ziffer eintragen. Dann bedeutet die Ziffer, um wieviel Einträge Sie sich vom ersten der gleichen Einträge nach vorn bewegen wollen (...|1" sucht nach dem zweiten, "...|2" nach dem dritten etc.).
Wenn das Item existiert, wird gleichzeitig der aktuelle Punkt auf dieses Item gesetzt, so daß Sie anschließend sofort mit einer Aktion ("MEL\", "MED\", "MDI\") fortfahren können. (Mausklick, Auslesen etc.)
Zu deinem Vorschlag mit FES\ - das geht auch und ist eigentlich schon eine fortgeschrittene Technik. In dem Fall wäre es aber zuviel Schreibarbeit und das vermeiden wir mit WR. FES\ kannst du zum Beispiel nehmen wenn du "Regualr Expressions" via IVL\ auf die Elemente anwenden willst.
Noch eine Anmerkung zu GFS\ (GetFromString). Der Befehl ist natürlich ideal für diesen Fall, weil er in einem Befehl den String sucht und gleich abtrennt.
Ansonsten bevorzuge ich jedoch GSS\ (GetSplitString) und IVC\ (IfVariableContains) für solche Fälle weil es einfacher zu formulieren ist.
PS: Man hört ja tolle Sachen über die neue Set-Top-Box von euch die es da bald geben soll. Mail mir mal wann es die gibt (für einen bekannten Arzt). |
_________________ Theo Gottwald
http://www.it-berater.org
Consultant WR-Scripting
"WinRobots - based on experience" |
|
      |
 |
Tom
Piccolo

Joined: 27 Jun 2004
Posts: 5
|
Posted:
Tue, 13.Jul.2004, 13:33 |
 |
Hallo Theo,
danke für die Anleitung. Die Sache hat einwandfrei funktioniert. Ich hab jetzt ein WinRobots-Skript für die Installation der neuen DVB-Software von val-u-media geschrieben, und das Ganze ging eigentlich ziemlich einfach. Das Skript installiert und registriert die zu dem DVB-Projekt gehörigen Dll's und die Codecs und anschließend wird ein Verzeichnis für die gesamte Anwendung erstellt und die benötigten Dateien reinkopiert.
Die Installation der Codecs habe ich ganz einfach in fünf Zeilen mit dem Analyzer erstellt.
Zu unserer neuen val-u-media-Box kann ich dir noch keinen endgültigen Termin sagen. Da sich sehr viele Dinge ändern läuft im Moment noch die Testphase. Die neue Box wird noch leiser sein als die Alte und sie wird auch hochauflösende Beiträge abspielen können. Die neue Software wird auch Live-Beiträge zeigen. |
|
|
  |
 |
|
|
|
|
|
View next topic
View previous topic
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Service provided by flatbyte.com
::
Powered by phpBB
:: FI Theme
:: Imprint ::
All times are GMT + 1 Hour
| |