Quote:
always print to server's printer
That's because VB code always runs on the Server, not the Client - so the printers it has access to are all connected to the server. It looks like it works in development because the server and the client are the same physical machine.
The server does not have any direct access to the client hardware - including any printers - for security reasons. Imagine you could: what would malicious sites do with your printer if they could access it directly?