How to get uid of a printer

I am developing a printing solution that our server sends print request to usb connected printer and the printer prints.

Printers are connected with usb to a PC, and there can be multiple PCs to get print requests from the server.

With Browser Print I can get uid of each printer and the server can easily stores uids and decide which PC to send a request.

But it seems Browser Print does not support parallel port(printer side) to usb(pc side) connection, and for our client's needs we decided to develop our solution.

In C#, I can send commands to a printer with its registered name on the PC.

But this name is automatically generated by system (like 'ZDesigner ZT230-200dpi ZPL') and can be edited by users, so the server does not know its name until the printer driver is installed, and different pc can have same name printers which means a name of a printer is not unique.

So I want to get uid information but I could not find corresponding ZPL command yet.

 

In short, how to get uid of a printer? ZPL command, system information, or driver information is all fine.