If you get the above error, it is because Vista has a problem dealing with a USB printer installed on the machine running the older version of Windows. This means network printer sharing doesn’t work as it should.
In my case the USB printer (HP Deskjet 940c) is running on the 98SE desktop, with the Vista laptop trying to share it.
The solution is to go to the control panel on the Vista machine, select Printers –> Add a printer –> Add a local printer.
Then either select the networked printer from the Use an existing port dropdown (it will be listed as \machineprinter), or if it is not listed use Create a new port –> Local Port and input the details manually in the format \machineprinter (in my case \Desktop1hp).
Then it will go through the setup wizard and should result in a usable printer!