A server for connection to a client via a network, the client being
operable to transmit user-input to the server over the network and to
receive user-output from the server over the network. The server
comprises a network interface for connection to the network; and a
processor coupled to the interface. The processor is operable to remotely
host execution of an application for the client. The application is for
receiving the user-input from the client over the network and for
generating the user-output for transmission to the client over the
network. The server implements a universal printer driver operable to
generate a universal printer file from the application based on a request
for a file to be printed that is embedded in the user-input. The server
is further operable to transmit the universal printer file over the
network. The universal printer file has a format amenable to
interpretation by a universal print file reader into a printer file
suitable for printing by a printing device.