Hi DemoDog,

You forgot 'Next' in the For Next loop.

Here's what you could try.

 Code:
$NewSrv='\\vhost' 
$OldSrv='\\pserver1' 
$aDCPtrs = "6thFloorCanon","6thFloorFieldCrew1","EngineeringPlotter_HPGL2","EngineeringPlotterPS" 

For Each $Ptr in $aDCPtrs 
   If GetDefaultPrinter() = $OldSrv+'\'+$Ptr 
      If SetDefaultPrinter($NewSrv'\'$Ptr)=0 
	 ? $NewSrv'\'$Ptr 
      EndIf 
   EndIf 
Next


Your Function GetDefaultPrinter() is ok.