yannosch
Goto Top

VBS: Fehler mit Variable!

Guten Tag liebe Community,

Folgende Problemstellung ist gegeben:

Mittels VBS Script wird über unser XenCenter ein Backup der virtuellen Maschinen gemacht.
In diesem Script wird der Username und das Passwort in einer Variable geschrieben ...
Das Passwort ist in der Variable "pw" und der Username in der Variable "user".
Das Passwort enthält ein Sonderzeichen. Nehmen wir an das Passwort ist PW1&PW2...
So erscheint nach ausführen des Scripts folgendes:

C:\bla\bla\Citrix\XenCenter\xe.exe -s 10.123.0.107 -u BLA -pw PW1&PW2 template-export
Syntax error: command name is missing
For usage run: 'xe help'
Der Befehl "PW2" ist entweder falsch geschrieben oder konnte nicht gefunden werden.

Ändern wir das Admin-kennwort des Xen's so ab, dass das "&"-Zeichen nicht mehr da ist - sprich PW1PW2 , so funktioniert das Script tadellos.

Wäre top , wenn uns jemand einen Lösungsansatz unterbreiten könnte ...

Liebe Grüße
euer Y@nnosch! face-smile

Content-Key: 220411

Url: https://administrator.de/contentid/220411

Ausgedruckt am: 29.03.2024 um 09:03 Uhr

Mitglied: 106543
106543 25.10.2013 um 07:29:24 Uhr
Goto Top
Hi,

setz PW1&PW2 in Anführungszeichen, also "PW1&PW2".

Grüße
Exze
Mitglied: Yannosch
Yannosch 25.10.2013 um 07:41:23 Uhr
Goto Top
Das haben wir porbiert, auch dort klappt es nicht ... wird haben evtl. dran gedacht das als String zu importieren ... aber es will alles nicht wirklich klappen ... Noch eine Idee ?

Liebe Grüße von
Y@nnosch ! face-smile
Mitglied: 106543
106543 25.10.2013 um 07:48:34 Uhr
Goto Top
Eine noch ja ;) wandelt im Passwort die Sonderzeichen in ASCII Code um.
z.B.
PW = Replace("PW1&PW2","&"," & Chr(38) & ")

Grüße
Exze
Mitglied: bastla
bastla 25.10.2013 um 08:39:43 Uhr
Goto Top
Hallo Yannosch!

Du könntest es noch mit der Schreibweise
PW1^&PW2
versuchen (da "&" unter CMD zum Verketten von Befehlen verwendet wird, muss es als "gewöhnlicher Text" entweder unter Anführungszeichen stehen oder escaped werden) ...

Grüße
bastla
Mitglied: 106543
106543 25.10.2013 um 08:42:38 Uhr
Goto Top
Hi bastla,

danke für die Info. Ich wusste bisher ni´cht, dass das escape-Zeichen von VBA das "^" ist.
Man lernt immer dazu ;)

Grüße
Exze
Mitglied: bastla
bastla 25.10.2013 um 13:25:34 Uhr
Goto Top
Hallo Exzellius!

Wie kommst Du auf VBA?

Grüße
bastla
Mitglied: 106543
106543 28.10.2013 um 07:11:35 Uhr
Goto Top
Hi,

mein Fehler ;) ich meinte natürlich VBS. Ich arbeite in letzter Zeit sehr viel mit VBA, da ist mir dieser Tippfehler unterlaufen.
Sorry.

Grüße
Exze
Mitglied: bastla
bastla 28.10.2013 um 09:17:35 Uhr
Goto Top
Hallo Exzellius!
ich meinte natürlich VBS.
Und ich meinte CMD - es wird ja offensichtlich ein externes Programm aufgerufen, und die Fehlermeldung "command name is missing" deutet für mich darauf hin, dass eben der Teil nach dem "&" als (weiterer) Befehl interpretiert wird ...

Grüße
bastla
Mitglied: 106543
106543 28.10.2013 um 09:28:30 Uhr
Goto Top
Hi,

ei ich stell mich aber grade blöd an ...
Sorry nochmal, das Wochenende scheint mich nicht verlieren zu wollen. ;)

Grüße
Exze