Allen,
Your code as i used it:
Code:
Break on
$RC=SetOption("WrapAtEOL","on") 

$array=PrinterList("NetAdmin2",0)
For Each $printer in $array  
  ? $printer  
Next

Get $a

Function PrinterList(optional $remotepc, optional $displaymode)
	Dim $service,$printer,$printers,$printerdesc[0],$counter,$portname,$printername
	If $remotepc=""
		$remotepc="."
	EndIf
	$Service = GetObject("winmgmts:\\" + $remotepc + "\root\cimv2")
	If @error
		Exit @error
	EndIf
	$Printers=$service.execquery ('select * from Win32_Printer')
	For Each $printer in $printers
		ReDim preserve $printerdesc[$counter]
		If $displaymode & 1
			$portname = "," + $printer.portname
		EndIf
		Select
			Case $displaymode & 4 ;remote printers
				If Left($printer.portname,2)="\\" Or Left($printer.name,2)=="\\"
					$printername=$printer.name
				EndIf
			Case $displaymode & 2 ;local printers
				If Left($printer.portname,2)<>"\\" And Left($printer.name,2)<>"\\"
					$printername=$printer.name
				EndIf
			Case 1 ; all printers
				$printername=$printer.name
		EndSelect
		If $printername<>""
			$printerdesc[$counter]=$printername + $portname
			$counter=$counter + 1
			$printername=""
		EndIf
	Next
	$PrinterList=$printerdesc
EndFunction

I get the same results, it works localy but not remotely.
_________________________
Wait don't order yet,... get KiXforms Designer .NET 2.0 (Beta)
KiXforms Designer .NET 2.0 (Beta)