OK, on the Windows 7 machine it prints fine but not from the other (XP) computers? You say the printer is visible on the network.
The first step is to find the proper share name for the printer. On the Windows 7 machine click Start and in the Search programs and files box type CMD.EXE then press enter. This will open a dos prompt, click in the DOS box and type HOSTNAME. This will return the Windows 7 share name, let's assume it was Win7machine. Next type "NET VIEW \\Win7machine" without the quotes and put in the machine name found in the HOSTNAME command. This will return the shared devices, it should be clear which one is the printer. Let's assume it is F4400, which would make the entire share name \\Win7Machine\F4400. In the following you will use the actual names as found in the HOSTNAME and NET VIEW commands.
Now go to an XP machine. Since the printer was installed and working before there is probably an instance of the printer installed. On the XP machine click Start, Printers and Faxes, right click on the F4400 (assuing there is one, if not see the next paragraph), Properties, Ports, Add Port, Local Port, New Port, \\Win7Machine\F4400 (use the actual names from the HOSTNAME and NET VIEW commands), OK, Apply.
If the printer was not installed on the XP machine click Add a Printer, Next, Local printer attached to this computer, Create a new port, Local Port, Next, \\Win7Machine\F4400 (use the actual names from the HOSTNAME and NET VIEW commands), OK, Next, select the
HP Deskjet 4400 series driver.