•  

    Hi Howard, that is my fault for not giving you all the code to properly initialize the class.  Try the following:
     

           ' Create object, passing in text

            Dim MyPrintObject As New TextPrint("<B>this will be bold</B>" + vbCrLf + "<ST=400>this will start at 400 pixels", "MyPrinterName")

    Also modify the printing class itself to accept two parameters:

    ' New constructor

    Public Sub New(ByVal Text As String, ByVal pName As String)

      ' Sets the file stream

      MyBase.New()

      varStart = 0

      strText = Text

      MyBase.PrinterSettings.PrinterName = pName ' This is the key line for setting the printer

      MySplitLine = strText.Split(vbCrLf)

    End Sub

    I too use exclusively network printers not local LPT1 ports.