We map printers by adding a printer variable value in system properties of our xp machines, we then access using the .dll file to add the correct printer, example shown below.....
if %PRINTER%==whatever rundll32 printui.dll,PrintUIEntry /y /n\\servername\printer
never failed me yet, and its completely away from mapping drives.