Ricavare la porta di una stampante

Per ricavare la porta di una stampante in VS 2003 è possibile utilizzare WMI e in particolare la classe Win32_Printer :

 

Public Shared Function GetPrinterPortName(ByVal printerName As String) As String
     Dim portName As String = String.Empty
     Dim path As String = String.Format(“Win32_Printer.DeviceID='{0}'”, printerName)
     Dim p As New System.Management.ManagementObject(path)

     p.Get()
     portName = p(“PortName”).ToString()
     p.Dispose() : p =

Nothing

 

    Return portName
End Function

Per utilizzare il codice occcore aggiungere un reference a System.Management.

In VS 2005 non ho trovato funzionalità native per ricavare la porta della stampante anche se inizialmente era previsto un My.Computer.Printers come si può leggere nel seguente articolo http://msdn.microsoft.com/msdnmag/issues/04/05/VisualBasic2005/ ma nella versione definitiva pare non sia poi stato implementato chissà se conteneva una funzionalità per ricavare le porte delle stampati?