Printer scripts do not run as a Computer startup script. You need to assign the script to the USER startup script
ie USER CONFIGURATION\WINDOWS SETTINGS\SCRIPTS (LOGON/LOGOFF)\LOGON
You could edit your script so that it looks at the machine name and decide what printer map. Here's mine
' automated printer redirection setup for users as script fails for machine startup
' if the printer is OFF then the script will fail
' what if the printer is not in the list of installed printers??
Option Explicit
DIM RegEntry, ComputerName
RegEntry="HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName\ComputerName"
ComputerName = ReadRegValue(RegEntry)
'if InStr(1,ucase(ComputerName),"Part or whole machine name",vbTextCompare) > 0 then call SetPrinter("\\Server\Printershare")
if InStr(1,ucase(ComputerName),"Admin",vbTextCompare) > 0 then call setPrinter("\\Server\AdminPrinter")
' keep adding lines for each location – modify just the sections in quotes as needed
wscript.quit
' *** This subroutine installs and sets the default printer
Sub SetPrinter(ByVal PrinterPath)
On Error Resume Next
DIM WshNetwork
Set WshNetwork = CreateObject("WScript.Network")
WshNetwork.AddWindowsPrinterConnection(PrinterPath)
WshNetwork.SetDefaultPrinter Printerpath
end sub
' **** This function returns the data in the registry value
Function ReadRegValue(ByVal RegValue)
DIM WSHShell
Set WSHShell = WScript.CreateObject("WScript.Shell")
ReadRegValue=""
On Error Resume Next
ReadRegValue= WSHShell.RegRead(RegValue)
End Function