Gulliver03 10 Geschrieben 19. Juli 2005 Melden Teilen Geschrieben 19. Juli 2005 Ich habe für jeden User ein Skript auf dem Server hinterlegt, das ihn beim Login mit einigen Server-Shares verbindet ...... ============================= @echo off echo ========================== echo Laufwerke werden verbunden echo ========================== attrib +h +s desktop.ini /s net start net use P: /home /yes net use M: \\servername\share1 net use N: \\servername\share2 net use X: \\servername\share3 net use T: \\servername\share4 net time \\servername /set /yes ============================= Das Skript funktioniert einwandfrei, aber ich würde es gerne etwas aufpeppen bzgl. der Statusinformationen. Das einzige was ich sehe ist ""Laufwerke werden verbunden". Mir schwebt vor, dass folgende Meldungen noch erscheinen: 1) Logon am Server "hier steht sein Name" in der Domäne "Hier steht deren Name" .... vielleicht noch schön unterstrichen :rolleyes: 2a) Verbindung mit Share "XYZ" wird hergestellt ..... 2b) Verbindung mit Share "XYZ" erfolgreich hergestellt ..... Beim Abmelden sollten dann diese Laufwerke ebenfalls getrennt werden, mit einer entsprechenden Meldung 3a) Verbindung mit Share "XYZ" wird getrennt ..... 3b) Verbindung mit Share "XYZ" erfolgreich getrennt. Beim An- und Abmelden würde ich gerne noch eine Meldung haben, nach der die Clients die Profildaten vom Server holen bzw. auf diesen wieder zurückspeichern ....... z.B. Benutzerdaten werden geholt bzw. gespeichert. Wäre toll, wenn mir da jemand ein wenig Unterstützung geben könnte. Allerbesten Dank. :) Zitieren Link zu diesem Kommentar
Hr_Rossi 10 Geschrieben 19. Juli 2005 Melden Teilen Geschrieben 19. Juli 2005 hi also ich kenn mich mit scripten echt nicht so aus, aber wenn man logisch denkt (wenn ich logisch denke :D ) probiers mal so keine Ahnung ob das funkt ! @echo off echo ========================== echo Laufwerke werden verbunden echo ========================== attrib +h +s desktop.ini /s net start echo P: wir hergestellt... net use P: /home /yes echo P: wurde hergestellt... net use M: \\servername\share1 net use N: \\servername\share2 net use X: \\servername\share3 net use T: \\servername\share4 net time \\servername /set /yes Zitieren Link zu diesem Kommentar
Constral 10 Geschrieben 19. Juli 2005 Melden Teilen Geschrieben 19. Juli 2005 jepp, eine tolle Idee mit den Begrüßungsdaten am Anfang. Unter Novell wird ja sofort einiges mehr angezeigt. Ich wäre auch für jeden Tipp dankbar. Gruß Constral Zitieren Link zu diesem Kommentar
lefg 276 Geschrieben 20. Juli 2005 Melden Teilen Geschrieben 20. Juli 2005 @echo off color 70 title %username% c: cd\ cls set DC=1fs-lubeca set local=%computername:~1,3% echo. echo Sehr geehrte Dame, sehr geehrter Herr, echo. echo Sie haben sich als %username% an der Domain %userdomain% angemeldet. echo. echo Der Name Ihrer Workstation ist: %computername% in Raum %local% echo. echo Ihr Logonserver ist: %logonserver% echo. net use * /del /y ::map user & groups rem echo on ::map Division for /f "tokens=2 delims=," %%a in ('%logonserver%\netlogon\dsquery user -name %username%') do set ou=%%a set group=%ou:~3% set FS=1FS-LUBECA if exist \\%FS%\%group%\%username%Home net use P: \\%FS%\%group%\%username%Home /persistent:no if exist \\%FS%\%group% net use G: \\%FS%\%group% if exist \\%FS%\BAFSalt$ net use U: \\%FS%\BAFSalt$ /persistent:no rem pause \\%dc%\netlogon\ifmember.exe NLL if %errorlevel% equ 1 ( if exist \\%FS%\O2k net use x: \\%FS%\O2k /persistent:no if exist \\%FS%\Download net use q: \\%FS%\Download /persistent:no if exist \\%FS%\Clipart net use r: \\%FS%\Clipart /persistent:no ) \\%dc%\netlogon\ifmember.exe Doz-BAFS echo %errorlevel% if %errorlevel% equ 1 ( net use j: \\%FS%\BA203 net use k: \\%FS%\BA203R net use l: \\%FS%\BA204 net use m: \\%FS%\BA204R net use n: \\%FS%\FS203 net use o: \\%FS%\FS204 if exist \\%FS%\Dozenten\%username%Home net use P: \\%FS%\Dozenten\%username%Home /persistent:no ) \\%dc%\netlogon\ifmember.exe BAFS echo %errorlevel% if %errorlevel% equ 1 ( if exist \\%FS%\Beurteilungen net use R: \\%FS%\Beurteilungen /persistent:no ) ::show map net use rem pause for /f %%e in ('time /t') do set time=%%e set separator=%time:~2,1% if %separator%==: ( set hour=%time:~0,2% set minute=%time:~3,2% ) else ( set hour=%time:~0,1% set minute=%time:~2,2%) set time=%hour%%minute% for /f "tokens=1,2" %%e in ('date /t') do set date=%%f set day=%date:~0,2% set month=%date:~3,2% set year=%date:~6,4% set date=%day%%month%%year% rem pause set connect=%date%%time%%username%%computername%.txt rem echo %connect% net use > %connect% echo. rem pause ::Virenschutzkonfiguration auslesen if exist "c:\programme\McAfee\McAfee VirusScan\SDATPACK.LST" set SDATPACK.LST="c:\programme\McAfee\McAfee VirusScan\SDATPACK.LST" if exist "c:\programme\McAfee\McAfeeVirusScan\SDATPACK.LST" set SDATPACK.LST="c:\programme\McAfee\McAfeeVirusScan\SDATPACK.LST" if exist %SDATPACK.LST% for /F "tokens=2" %%e in ('findstr "Engine" %SDATPACK.LST%') do set engine=%%e if exist %SDATPACK.LST% for /F "tokens=4" %%e in ('findstr "AVPARAM" %SDATPACK.LST%') do set avparam=%%e if exist %SDATPACK.LST% for /F "tokens=4" %%e in ('findstr "MCSCAN" %SDATPACK.LST%') do set mcscan=%%e if exist %SDATPACK.LST% for /F "tokens=2" %%e in ('findstr "DAT.Files" %SDATPACK.LST%') do set dat=%%e if exist %SDATPACK.LST% for /F "tokens=4" %%e in ('findstr "CLEAN" %SDATPACK.LST%') do set clean=%%e if not exist "c:\programme\McAfee\*" set dat=0000 set ActivityLogPath="c:\programme\McAfee\McAfee VirusScan\Activity Log\VScan.Log" if exist %ActivityLogPath% ( for /F "skip=5 tokens=1,1" %%a in ('dir %ActivityLogPath%') do (set activity=%%a & goto out) :out set lastscan=%activity:~0,10% ) ::Virenschutzkonfiguration an Server senden set NAIUpdate=%computername%.%dat% echo %engine% %avparam% %dat% %clean% %lastscan% > \\%dc%\AntiVirusUpdateProtokolle\%naiupdate%.txt ::Virenschutzkonfiguration anzeigen echo. echo Die Virenschutzkonfiguration ist: echo Engine: %engine% vom %avparam% echo Scanner and Shield: %mcscan% echo Virusdefinition: %dat% vom %clean% if exist %ActivityLogPath% echo Letzter Scan: %lastscan% Zitieren Link zu diesem Kommentar
haidinger 10 Geschrieben 20. Juli 2005 Melden Teilen Geschrieben 20. Juli 2005 Hi habe hier im Board ein paar verschiendene gefunden und eins für meine Bedürfnisse erstellt, vielleicht gefällts Dir. logon.vbs 1.teil Option Explicit On Error Resume Next Dim WSHNetwork, WSHShell, CRLF, objArgs, strMsg, strCompany, i, colDrives Dim colPrinters, strUserName, strLogonSRV, strPrintSRV, strFileSRV, strDomain Dim nReturnCode, nSecondsToWait, objMember, objGroup '---------- Muss angepasst werden------------ CRLF = Chr(13) & Chr(10) strLogonSRV = "01-rhmuc" strPrintSRV = "01-rhmuc" strFileSRV = "01-rhmuc" Set WSHNetwork = Wscript.CreateObject("WScript.Network") Set WSHShell = WScript.CreateObject("WScript.Shell") Set objArgs = Wscript.Arguments ' ---------------------------------------------------------- ' Synchronisieren der Zeit mit dem Domänencontoller nReturnCode = wshShell.Run("net time \\" & strLogonSRV & " /set /yes", 0, TRUE) If (nReturnCode <> 0) Then MsgBox "Es war nicht möglich die lokale Uhrzeit zu synchronisieren." & vbNewLine &_ "Bitte melden Sie sich beim System-Administrator.",48,"Logon Script Fehler" Else strMsg = "Zeitsynchronisation mit """ & strLogonSRV & """ erfolgreich" & CRLF & CRLF End If ' ---------------------------------------------------------- ' Einrichten der Netzlaufwerke und Netzwerkdrucker ' ---------- Muss angepasst werden------------ strCompany = "Firma Test " strDomain = WSHNetwork.UserDomain strUserName = "" On Error Resume Next Do While strUserName = "" strUserName = WSHNetwork.UserName loop ' ---------------------------------------------------------- ' Fügt den Printer hinzu und Setzt ihn als Standard optional nach Gruppenzugehörigkeit ' ---------- Muss angepasst werden------------ WSHNetwork.RemovePrinterConnection "\\" & strPrintSRV & "\HPLaserJet5" 'If IsMember("MIPDRUCKER") Then '--------- Drucker nach Gruppenzugehörigkeit zuordnen, falls notwendig (AD Gruppe hinzufügen) WSHNetwork.AddWindowsPrinterConnection "\\" & strPrintSRV & "\HPLaserJet5" 'WSHNetwork.SetDefaultPrinter "\\" & strPrintSRV & "\HPLaserJet5" ' ------ setzt den Drucker auf Standarddrucker! 'end if ' ---------- Muss angepasst werden------------ ' Fügt das Persönliche Laufwerk des Users hinzu und entfernt es vorher! WSHNetwork.RemoveNetworkDrive "M:" WSHNetwork.MapNetworkDrive "M:", "\\" & strFileSRV & "\home$\" & strUserName ' ---------------------------------------------------------- ' Fügt das Applikationslaufwerk hinzu und entfernt es vorher! WSHNetwork.RemoveNetworkDrive "P:" WSHNetwork.MapNetworkDrive "P:", "\\" & strFileSRV & "\test$" ' ---------------------------------------------------------- ' Fügt das Firmenlaufwerk hinzu und entfernt es vorher! WSHNetwork.RemoveNetworkDrive "N:" WSHNetwork.MapNetworkDrive "N:", "\\" & strFileSRV & "\test1$" ' ---------------------------------------------------------- ' Fügt Laufwerke nach Gruppenzugehörigkeit aus dem AD hinzu! ' Wenn Notwendig Laufwerk kopieren und Buchstaben und Ordner anpassen! Zitieren Link zu diesem Kommentar
haidinger 10 Geschrieben 20. Juli 2005 Melden Teilen Geschrieben 20. Juli 2005 teil2 zum script WSHNetwork.RemoveNetworkDrive "O:" If IsMember("MIPTEST") or IsMember("Domänen-Admins") Then WSHNetwork.MapNetworkDrive "O:", "\\" & strFileSRV & "\test3$" End If WSHNetwork.RemoveNetworkDrive "S:" If IsMember("MIPTEST") or IsMember("Domänen-Admins") Then WSHNetwork.MapNetworkDrive "S:", "\\" & strFileSRV & "\test4$" End If WSHNetwork.RemoveNetworkDrive "T:" If IsMember("MIPTEST") or IsMember("Domänen-Admins") Then WSHNetwork.MapNetworkDrive "T:", "\\" & strFileSRV & "\test5$" End If WSHNetwork.RemoveNetworkDrive "U:" If IsMember("MIPTEST") or IsMember("Domänen-Admins") Then WSHNetwork.MapNetworkDrive "U:", "\\" & strFileSRV & "\test6$" End If WSHNetwork.RemoveNetworkDrive "W:" If IsMember("MIPTEST") or IsMember("Domänen-Admins") Then WSHNetwork.MapNetworkDrive "W:", "\\" & strFileSRV & "\test7$" End If WSHNetwork.RemoveNetworkDrive "X:" If IsMember("MIPTEST") or IsMember("Domänen-Admins") Then WSHNetwork.MapNetworkDrive "X:", "\\" & strFileSRV & "\test8$" End If Function IsMember(strGroup) Dim objMember, objGroup On Error Resume Next Set objGroup = GetObject("WinNT://" & strDomain & "/" & strGroup & ",group") If Err.Number = 0 Then IsMember = objGroup.IsMember("WinNT://" & strDomain & "/" & strUserName) End If On Error Goto 0 End Function Set colDrives = WSHNetwork.EnumNetworkDrives Set colPrinters = WSHNetwork.EnumPrinterConnections ' ---------------------------------------------------------- ' ------------- Überschrift strMsg = strMsg & CRLF & "Sie sind erfolgreich am System angemeldet worden mit folgenden Einstellungen:" & CRLF & CRLF & _ "Benutzername" & Chr(9) & "= " & strUserName & CRLF & "Computername" & Chr(9) & "= " & _ WSHNetwork.ComputerName & CRLF & "Domäne" & Chr(9) & Chr (9) & "= " & strDomain & CRLF ' ---------------------------------------------------------- ' ------------- Anzeigen der erfolgreich verbunden Laufwerke If colDrives.Count = 0 Then strMsg = strMsg & CRLF & "Kein Netzlaufwerk ist verbunden." & CRLF Else strMsg = strMsg & CRLF & "Verbundene Netzlaufwerke:" & CRLF For i = 0 To colDrives.Count - 1 Step 2 strMsg = strMsg & CRLF & colDrives(i) & Chr(9) & colDrives(i + 1) Next End If ' ---------------------------------------------------------- ' ------------- Anzeigen der erfolgreich verbundenen Drucker If colPrinters.Count = 0 Then strMsg = strMsg & CRLF & CRLF & "Kein Netzwerk-Drucker oder Lokaler Drucker sind vorhanden." & CRLF Else strMsg = strMsg & CRLF & CRLF & "Verbundene Netzwerk-Drucker:" & CRLF For i = 0 To colPrinters.Count - 1 Step 2 strMsg = strMsg & CRLF & colPrinters(i) & Chr(9) & colPrinters(i + 1) Next End If Function zeit zeit = "Systemzeit: " & Chr(9) & FormatDateTime(Date, 1) & " - " & FormatDateTime(Time, 4) End Function ' ------------- Zeit zum schliesen des Popup die Zeit hinter strMsg einstellen z.b. 60 bedeutet 60 Sekunden. WshShell.PopUp zeit & CRLF & CRLF & strMsg,10," " & strUserName & " von " & strCompany,64 Set WSHNetwork = Nothing Set WSHShell = Nothing Set objArgs = Nothing Set colDrives = Nothing Set colPrinters = Nothing Zitieren Link zu diesem Kommentar
Gulliver03 10 Geschrieben 20. Juli 2005 Autor Melden Teilen Geschrieben 20. Juli 2005 Wow, da sind ja echt eine Menge Tipps & Tricks dabei :) .... werde mal versuchen, das eine oder andere umzusetzen. Allerbesten Dank erstmal! :) Zitieren Link zu diesem Kommentar
Gulliver03 10 Geschrieben 20. Juli 2005 Autor Melden Teilen Geschrieben 20. Juli 2005 @haidinger Dein Skript setzt auf VBS auf ..... gibt es da prinzipiell Unterschiede im Vergleich zu einer normalen *.bat oder*.cmd-Datei ....... oder ist das lediglich ein etwas anderer Aufbau der Skripte? Was setzt denn VBS voraus? Besten Dank für Info Zitieren Link zu diesem Kommentar
haidinger 10 Geschrieben 20. Juli 2005 Melden Teilen Geschrieben 20. Juli 2005 Hi Gulliver, im Prinzip ist es egal ob man .bat oder .vbs als logonscript hernimmst. Wie oben erwähnt schaut es meiner Meinung nach einfach anspruchsvoller aus wenn es gestartet wird. Du brauchst lediglich die Servernamen und die Freigabenamen anpassen schon läuft das Ding und Du siehst was ich meine. Hat halt auch den Vorteil dass Du nur ein Script benötigst für alle User da die Laufwerke nach Gruppenzugehörigkeit (kannste auch mit den druckern machen )gemappt werden. z.b. du erstellst in Deiner OU eine Sicherheitsgruppe MIPTEST, dieser fügst Du als Mitglied Musteruser hinzu und schon bekommt er sein Netzlaufwerk. Achtung: Beim homeordner muss der Ordner wie der Anmeldename angelegt sein. z.b. Nachnahme-Vornahme Viel Spass damit schaut echt klasse aus bei Fragen einfach melden Gruss Rainer Zitieren Link zu diesem Kommentar
Gulliver03 10 Geschrieben 20. Juli 2005 Autor Melden Teilen Geschrieben 20. Juli 2005 @haidinger nochmal eine dumme Frage .... womit erstelle ich ein vbs-Skript .... mit Notepad und speichere es dann mit der Endung vbs? Danke! Zitieren Link zu diesem Kommentar
Gulliver03 10 Geschrieben 20. Juli 2005 Autor Melden Teilen Geschrieben 20. Juli 2005 @haidinger nochmal eine dumme Frage .... womit erstelle ich ein vbs-Skript .... mit Notepad und speichere es dann mit der Endung vbs? Danke! Frage ist beantwortet! .... ja, damit geht es! Zitieren Link zu diesem Kommentar
snake99 13 Geschrieben 20. Juli 2005 Melden Teilen Geschrieben 20. Juli 2005 Vielleicht ein kleiner Tipp: *.vbs Scripte (und natürlich auch andere Dateien wie *.ini, *.bat, etc.) lassen sich super in dem Programm "Ultra Edit32" schreiben / editieren. Zitieren Link zu diesem Kommentar
haidinger 10 Geschrieben 21. Juli 2005 Melden Teilen Geschrieben 21. Juli 2005 @snake Bingo nehme das gleiche Programm :D gruss rainer 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.