http://qs321.pair.com?node_id=689489
Category: Win32 Stuff
Author/Contact Info Andrew Crawford <acrawford@laetabilis.com>
Description: It's very easy to map a drive or a printer on your Windows workstation from Perl. This makes it very practical to write login scripts in Perl. I have not been able to find a pure-Perl method to check for the success of these operations. They always return success and no error variables are set.
use Win32::OLE;
my $workstation=Win32::OLE->CreateObject("WScript.Network");

# Add a printer
my $printerpath='\\\\server\\printername';
$workstation->AddWindowsPrinterConnection($printerpath);

# Make it the default
$workstation->SetDefaultPrinter($printerpath);

# Map a network drive
my $drivepath='\\\\server\\sharename';
$workstation->MapNetworkDrive("X:",$drivepath);