deeboo
Goto Top

Werte bei Programmaufruf mit Shell übergeben?

Hmm. Und weiter geht`s. face-smile

Wer auch immer da draussen sein mag, kann mir vielleicht helfen.

Folgendes Szenario:

Dateiaufruf
cmd > Datei.vbs 5 2
cmd > Datei.vbs 2 10
cmd > Datei.vbs 4 40

Die Werte in der Shell hinterm Dateinamen können also variieren.
Wie bekomme ich die in eine VBS Variable und kann prüfen, obs wirklich nur Zahlen sind?

Unsere Errorcoderückgabe funktioniert schon zum Teil.
Jedoch klappt unsere if / elseif/ else Abfrage nicht wirklich, da das Ergebnis nicht in den entsprechenden Bereich purzelt.
Wir möchten demnach mit den übergebenen Parametern einen Bereich definieren, der dann einen bestimmten Errorcode zurückgibt.

Wenn ich die Variablen fest im Code vorgebe, klappts.

Unsere derzeitige Abfrage
(geht nicht):

If OfPTN(1) >= PTNArray(comm(0)) Then
WScript.Echo OfPTN(1)
WScript.Quit 0
ElseIf OfPTN(1) > PTNArray(comm(1)) Then
WScript.Echo OfPTN(1)
WScript.Quit 1
Else
WScript.Echo OfPTN(1)
WScript.Quit 2
End IF


geht:
'Vergleich
If OfPTN >= PTNArray(0) Then
WScript.Echo "1"
ElseIf OfPTN > PTNArray(5) Then
WScript.Echo "2"
Else
WScript.Echo "3"
End IF


Lg
deeboo

Content-ID: 110100

Url: https://administrator.de/forum/werte-bei-programmaufruf-mit-shell-uebergeben-110100.html

Ausgedruckt am: 23.12.2024 um 07:12 Uhr

bastla
bastla 26.02.2009 um 18:10:28 Uhr
Goto Top
Hallo deeboo!

Ohne die davor liegenden Zeilen mit der Zuweisung der Werte an die Variablen lässt sich mit diesem Stück Code (das noch nicht einmal als solcher ist face-wink) nicht so ganz viel anfangen ...

Je nachdem, was Du als "Zahl" betrachten willst, gäbe es in VBS zB die Funktion "IsNumeric()" (die allerdings Punkte in "Zahlen" etwas seltsam behandelt, indem sie diese ignoriert) ...

Grüße
bastla
deeboo
deeboo 02.03.2009 um 08:36:24 Uhr
Goto Top
Einen wunderschönen guten Morgen,

die übergabe der Parameter und der resultierende Echo über den "Fehlercode" funktioniert.
Nun hänge ich vorm nächsten Problem.
Es wird eine Textdatei eingelesen, die zuvor erstellt wurde. (Wird in ein Array gelesen)
Nun vergleiche ich 2 Werte miteinander. Wenn beide Werte zusammenpassen, soll mir die Position
im Array zurückgegeben werden.
Nur wie kann ich diese bestimmen?

LG
deeboo
Biber
Biber 02.03.2009 um 08:47:23 Uhr
Goto Top
Moin deeboo,

Nur wie kann ich diese bestimmen?
Indem Du diese Bestimmung anhand des konkreten eingetippselten Sourcecodes erarbeitest.
Wenn Du möchtest, dann helfen wir Dir dabei.

BTW, dabei wäre der konkret eingetippselte Sourcecode eine gewisse Vereinfachung für uns.
Am liebsten in den von bastla erwähnten Code-Tags.

Grüße
Biber
bastla
bastla 02.03.2009 um 11:59:03 Uhr
Goto Top
... abgesehen davon wäre die neue Thematik wohl auch einen neuen Thread wert ...

Grüße
bastla