BlackShadow 12 Geschrieben 27. Oktober 2008 Melden Teilen Geschrieben 27. Oktober 2008 Hallo, ich hab hier folgendes problem gerade. Habe einige benutzer die sich per Citrix Anmelden und unter Ihrem Benutzernamen eine sog. benutzervariable haben. Diese sieht folgend aus. %ORT% und hat den inhalt den entsprechenden Ortsnamen. Dieses möchte ich nun auslesen das klappt auch soweit, nun will ich anhand des Ortes die entsprechenden laufwerke die in einem Array sind auslesen und verweren. dim strort(2) strort(ulm) = "\\srv01\ulm" strort(neu-ulm) = "\\srv01\neu-ulm" jedoch funktioniert das obere array nicht so ganz wie ich das gerne hätte. per strort(ulm) nimmt er immer das letze im array dim strort(2) strort(0) = "\\srv01\ulm" strort(1) = "\\srv01\neu-ulm" hier klappt das allerdings wüsst ich nicht wie ich der ausgelesenen benutzervariable hinzubekomm das wenn der benutzer Ulm hat dann auch das Array mit Ulm nimmt. hat mir jemand eine idee? gruß und danke Frank Zitieren Link zu diesem Kommentar
NilsK 2.934 Geschrieben 27. Oktober 2008 Melden Teilen Geschrieben 27. Oktober 2008 Moin, ein normales Array in VBScript erwartet Zahlen als Elementkennzeichen. In deinem Beispiel werden "ulm" und "neu-ulm" also als Variablen interpretiert - sofern du die nicht definiert hast, haben sie den Wert 0. Im Falle von "neu-ulm" ist es sogar noch lustiger: Das interpretiert VBS als "neu minus ulm". Also: Am einfachsten ist es, wenn du mit Zahlen arbeitest, wie dein zweites Beispiel angibt. Als Alternative kannst du auch ein Dictionary nutzen - das macht das, was du suchst, ist aber komplizierter zu handhaben. Hier ein Beispiel: Set dictStandort = CreateObject("Scripting.Dictionary") dictStandort.Add "Ulm", "\\srv01\ulm" dictStandort.Add "Neu-Ulm", "\\srv01\neu-ulm" If dictStandort.Exists("Ulm") Then WScript.Echo dictStandort.Item("Ulm") End If Gruß, Nils Zitieren Link zu diesem Kommentar
BlackShadow 12 Geschrieben 27. Oktober 2008 Autor Melden Teilen Geschrieben 27. Oktober 2008 Hallo, und danke für deine Antwort. das dacht ich mir fast denn wenn ich Zahlen verwende klappts prima aber ich kann ja nun ned noch ne if und else anweisung rein nehmen indem er dann das Ulm in 1 tauscht. aber ich schau mir mal dein script drunter an ob ich das lauffähig bekomme. – klappt prima hab die 7 Standorte eingetragen und den rest noch angepasst danke schön für deine Lösung Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.