"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

VBS Logon Skript will nicht

-= Luk =- 22.04.2008 - 13:04 1304 8
Posts

-= Luk =-

4WD !!
Avatar
Registered: Jul 2003
Location: Vorarlberg
Posts: 2585
Hab heute ein wenig gebastelt und ein relativ einfaches Login Skript erstellt, welches aus dem AD die Organisation ausliest und dann je nach dem die Netzlaufwerke und Drucker verbindet oder nicht.

Jedoch ohne Erfolg. Bin ratlos, an was das liegen könnte.

Code:
'Anmeldescript

'Initialisierung der Zuordnungsmöglichkeit
Set objMapNWDrive = CreateObject("WScript.Network")

'Initialisierung der AD-Suchmöglichkeit, und suche nach Benutzerobjekt
set WshAD = CreateObject("ADSystemInfo")
Set WshADUser = GetObject("LDAP://ganahl.local/" & WshAD.UserName )

'Feststellen der Abteilung und Umwandlung in Grossbuchstaben
UserDepartment = UCase(WshADUser.Department)

'Auch bei Fehler weitermachen
On Error Resume Next

'Standard Zuweisung

objMapNWDrive.RemoveNetworkDrive "S:"
objMapNWDrive.RemoveNetworkDrive "X:"
objMapNWDrive.RemoveNetworkDrive "Y:"

'Zuweisung nur für Buero

if userDepartment = "Buero" then

objMapNWDrive.MapNetworkDrive "x:", "\\192.168.126.230\public\Ganahl Dateien"

end if

Hab jetzt natürlich nur den oberen Teil drin, die anderen Organisationen habe ich heraus gelöscht.

Triple-X

Addicted
Avatar
Registered: Feb 2001
Location: Pregarten (OÖ)
Posts: 485
Was mir jetzt auf die Schnelle auffällt ist, das bei der Zuweisung "UserDepartment" mit einem Großbuchstaben anfängt und beim if nicht.
(Zeile 12 & Zeile 25)

Habe aber keine Ahnung ob VBS überhaupt case sensitive ist.

Oculus

void
Avatar
Registered: Jun 2001
Location: schlafzimmer
Posts: 856
ich denke mal, dass hier der hund vergraben liegt:

Code:
Set WshADUser = GetObject("LDAP://ganahl.local/" & WshAD.UserName )

du willst hier ein bind auf ein ldap-objekt machen, ohne den kompletten CN anzugeben, so geht das nicht

so wärs richtig
Code:
Set WshADUser = GetObject("LDAP://" & WshAD.UserName )

WshAD.UserName liefert dir den kompletten CN des aktuellen users.


und vbscript ist nicht case-sensitive :)

Vivo

Dreamworker
Avatar
Registered: May 2002
Location: Tal der Könige
Posts: 1478
Warum machst du im AD nicht für jede OE ein eigenes Skript ? ... ist doch weitaus übersichtlicher ...

-= Luk =-

4WD !!
Avatar
Registered: Jul 2003
Location: Vorarlberg
Posts: 2585
Funktioniert leider immer noch nicht. Der Pfad ist zu 100% Richtig. Wie gehe ich hier am besten Schritt für Schritt vor, um zu sehen, an welchem Teil des Skripts ein Fehler passiert? Gibt es dafür ein Tool?

Ich möchte das ganze erst einmal so lösen. Danach kann ich mit meinen Ideen ein wenig weiter spielen!

Vivo

Dreamworker
Avatar
Registered: May 2002
Location: Tal der Könige
Posts: 1478
Am einfachsten ist es das Skript in der cmdline auszuführen und dazwischen Debugwerte auszugeben ... ein kostenpflichtiger Debugger wäre SplineTech VBS Debugger ... (Wennst eine feine Freewareversion findest - bitte posten :-) )

@"so lösen": Es würde dir viel Arbeit ersparen .. aber ich will dich natürlich zu nichts überreden :-)

-= Luk =-

4WD !!
Avatar
Registered: Jul 2003
Location: Vorarlberg
Posts: 2585
Könnte es an dem Leerzeichen von diesem Ordner liegen?

objMapNWDrive.MapNetworkDrive "x:", "\\192.168.126.230\public\Ganahl Dateien"

Vivo

Dreamworker
Avatar
Registered: May 2002
Location: Tal der Könige
Posts: 1478
Ja ...

objMapNWDrive.MapNetworkDrive "x:", """\\192.168.126.230\public\Ganahl Dateien"""

//Edit: ich würd trotzdem ein _ drauss machen ...

-= Luk =-

4WD !!
Avatar
Registered: Jul 2003
Location: Vorarlberg
Posts: 2585
Werde es Morgen mal probieren.

Danke
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz