Batch file to map network drives for users at logon.
Often it is asked how to create a batch frile to map network drives for users at logon. Here's how I did it at one site where I had a small number of users, but each user had a different set of mapped drives they needed to access.
Note, in this posting, ?sbs1? is the name of my SBS server. Substitue your SBS server name accordingly!
Location of script: The default SBS login script is located at c:\windows\sysvol\sysvol\sbs1\scripts and the script file is SBS_LOGIN_SCRIPT.bat.
Note: a quick way to get to this directory is to click Start > Run, and then enter \\sbs1\netlogon - and you will be right there, with no further drilling down any subdirectories!
1. First thing you want to do is to make a backup copy of the .bat file - just in case!
2. Next, edit the contents of the default .bat file so it looks like this, and then save it.
Rem Default SBS Login Script for users
\\sbs1\netlogon\%username%.BAT
3. I then created a new .bat file for each user. The name of the .bat file explicitly matched their actual logon name. So, if you logged on as JohnDoe, then the batch file was named JohnDoe.bat
Here is the content of one such user batch file:
Rem Batch File for user John Doe
NET USE Q: \\sbs1\Quickbooks
NET USE S: \\sbs1\SharedCompany
NET USE T: \\sbs1\Access
So, what happens is that when John Doe logs in, the default SBS script is started and immediately starts up the script file johndoe.bat, which has the various mapped drives to be declared.
4. Now, all you need to do is to create a new batch file for each user - no need to mess with the default SBS script any more. And no need to modify the name of the startup login script from within AD.
Add a new user? Simply add a new batch file!
Do not delete the default logon script.
It does more than just setup new computers, you add.
It also reapplies some sbs gpo's in case they have been altered, amongst other things. It also is used by the add software Wizard should you run it.
If you are going to be adding lines to the deafult logon script, I would highly recomend adding each line as a call statement, rather than just a line. other wise if you add 2 or more lines, there is the potential for some of them to not fire off. By using call you force the focus back to the defalut logon script after excecution of your new line.
So to use Kevin's example you would add
Call \\sbs1\netlogon\%username%.BAT
So your new default logon script would read
Rem Default SBS Login Script (First Line Always)
Call \\SBS1\Clients\Setup\setup.exe /s SBS1
Rem Default SBS Login Script for users
Call \\sbs1\netlogon\%username%.BAT
Rem Default SBS Login Script for Additional Command
Call \\SBS1\netlogon\AnotherBatchFile.bat
:End
This will ensure all the lines in your logon script get a chance to fire off.
http://msmvps.com/blogs/kwsupport/archive/2004/11/03/17830.aspx
Please post back if you have any more problems or questions.