You want to use Win32 spooler functions. I use this code all the time to send ZPL print jobs directly to networked Zebra thermal label printers. You can send bytes, a file stream, or a string.
I've never needed any drivers, just the network path to the printer and its worked every time.