You are undeniably correct.
My recommendation is to use Kixtart. It's a script language that is VERY functional when it comes to login scripts. You can do virtually anything you want with it. It has macros that can determine username, pc name, group memberships, time of day, your mom's shoe size, and just about anything else you could possibly want to know about who is logging on, when, and where.
Even better yet... kixtart is just as simple to write in as regular NT batch file language.The manual has tons of examples for each command you can customize you your needs.
Regarding mapping a private share based on who is logging in... it's very simple.
It's a matter of setting up a basic "use" command to map the drive, and thenreplacing certain values in the UNC with macros that derive the userid that is logging in, and also the hostname of the PC they're on at the time if you really want. The machine name is irrelevant though since you'll want the user to get his privateshare even if they log into multiple machines.
All you really need is to already have standard naming convention for your private share names. Basically... each private share needs to match up to each username in some common fashion so that youcan isolate a specific section of the command line and make it into a variable.
ie. user: billybob share: \\server\billybob$
command-> use h: "\\server\" +@userid+ "$"
which translates to:
use h: "\\server\billybob$"
That makes one single command that will work for all users, based on determining their username during the login process.
It works.
Look into it. I guarantee you can make Kixtart work for you. Download Kixtart v3.63. It's free.
http://kixtart.org
(Also, no I'm not working for the kixtart people, and no I don't have any programming background at all. I honestly like it and have used it to make numerous complicated scripts.)