Raggamuffin Skrevet 26. oktober 2010 Del Skrevet 26. oktober 2010 Hei jeg har laget er login script som skal mappe opp mapper ved innlogging, men det er litt for basic. Har noen et tips for hvordan å få "MappedDrive function" til å bruke de bokstavene som er tilgjengelig? Dvs "hoppe videre" hvis N: er opptatt? På forhånd takk:) '================================================================= ' Login Script ' Synkroniserer lokal klokke og dato med domenet ' kobler opp "brukernavn$" på \\server som M: ' Sjekker gruppemedlemskap og kobler opp tilsvarene delt ressurs ' Kobler opp HK katalogen som P: '================================================================= Option Explicit Dim objGroupList, objUser, strGroup, objNetwork, strNTName, WshShell Dim NetBiosDomainName, strHomeDrive, strHomeShare NetBiosDomainName = "domene.no" Set objNetwork = CreateObject("Wscript.Network") strNTName = "" On Error Resume Next Do While strNTName = "" strNTName = objNetwork.userName Err.Clear If Wscript.Version > 5 Then Wscript.Sleep 100 End If Loop On Error GoTo 0 '====== Synchronizing local time with domain ====== On Error Resume Next Set WshShell = WScript.CreateObject("Wscript.Shell") WshShell.Run "%COMSPEC% /c net time /DOMAIN:" & NetBiosDomainName & " /SET /YES",0,true '======== Bind user object in Active Directory ======== Set objUser = GetObject("WinNT://" & NetBiosDomainName & "/" & strNTName & ",user") '======= Kobler opp "brukernavn$" på server == Dim strDriveLetter, strRemotePath, strUserName strDriveLetter = "M:" strRemotePath = "\\server" Set objNetwork = WScript.CreateObject("WScript.Network") strUserName = objNetwork.UserName objNetwork.MapNetworkDrive strDriveLetter, strRemotePath _ & "\" & strUserName _ & "$" '======= Map network drive based on group membership == if IsMember("Sikkerhetsgruppe") then MappedDrive "N:", "\\server\mappe" End if '======== Map public drive ============================ MappedDrive "P:", "\\server\HK" Greeting strNTName Set objGroupList = Nothing Set objUser = Nothing Set objNetwork = Nothing '======================================================= ' MappedDrive function '======================================================= Function MappedDrive (DriveLetter, SharedPath) On Error Resume Next If objNetwork.DriveExists(DriveLetter) Then objNetwork.RemoveNetworkDrive DriveLetter, True, True End If On Error Resume Next If objNetwork.DriveExists(SharedPath) Then objNetwork.MapNetworkDrive DriveLetter, SharedPath End if End Function '======================================================= ' IsMember function '======================================================= Function IsMember(strGroup) If IsEmpty(objGroupList) Then Call LoadGroups End If IsMember = objGroupList.Exists(strGroup) End Function '======================================================= ' LoadGroups function '======================================================= Sub LoadGroups Dim objGroup Set objGroupList = CreateObject("Scripting.Dictionary") objGroupList.CompareMode = vbTextCompare For Each objGroup In objUser.Groups objGroupList(objGroup.name) = True Next Set objGroup = Nothing End Sub '======================================================= ' FormatLongDate Function '======================================================= Function GetTodayLongDate Dim dDate dDate = now() GetTodayLongDate = WeekdayName(DatePart("w",dDate),0) & " " _ & MonthName(DatePart("m",dDate),1) & " " & DatePart("d",dDate) _ & ", " & DatePart("yyyy",dDate) End Function Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå