My software is going to be on Windows and later also Linux. I'm developing on Windows. For now I made a serial port class to drive a matrixprinter directly, and I set an Epson thermal receiptprinter as defaultprinter in Windows.
I am using similar approach when dealing with two printers... I mean, second or special printer is out of scope of U++, you have to handle it with host platform services...