I realise this thread is now years old, but since I encountered a similar problem recently and managed to figure it out, I thought I'd post how I did it for anyone else that may run into the same issue.
The printer was installed on a Windows XP Home Edition desktop PC and working correctly. I was trying to connect to the printer from a Windows 7 Home Premium (64bit) laptop.
*
WHERE I WENT WRONG*
I navigated to the UNC path for the shared printer (e.g
\\desktop\hpphoto), right clicked the printer and clicked "connect". This installed the printer fine and could see it's status and alter it's settings, but attempts to print would throw up the 0x0000007a error.
This is because XP is using a different version of the driver which is not compatible with Windows 7 or perhaps in your case Vista. When you connect to a printer in this fashion, the host computer is supposed to supply the guest computer with the correct drivers, so long as they have been specified in the "additional drivers" section. Since it isn't possible to supply additional drivers for Vista or Windows 7 in XP, it seems to install the XP driver instead.
*
THE FIX*
First, remove the broken printer from the computer that is throwing up the error (right clicking the printer and selecting remove device is fine). Now start the "Add Printer" wizard. You'll want to "Add a local printer", click next and create a new port of type "Local Port". When you click next you will be asked to name the port. You should name the port with the UNC address of the shared printer i.e \\
computername\
printersharename (
\\desktop\hpphoto in my case)
If the wizard accepts your UNC address you can then specify the correct drivers for you version of Windows, which can be downloaded from your printer manufacturer's website. If you are told that drivers are already on the system, choose to overwrite them since they are the drivers that were installed from XP in previous attempts to connect.
When all is finished, printing should work normally. At least, it did for me.