First things first: I am going to assume that your printer is already successfully hooked up and working on your Windows box. You should also have a wireless network set up and functioning correctly. I also am taking the assumption that you are at least vaguely familiar with the Windows XP and OS X environments, so if I mention the Control Panel on the XP box, you know how to get there, and so forth. If you dont know, then ask our friend Google, hell help you out with a quickness.
Ok, now that all of that is out of the way, heres what we need to do.
Get the Windows IP address. Fastest way to do this is go to Start > Run > and type in
cmd
Then in the new window, type
ipconfig
and write down the windows IP address; well need it later. It should be in the ballpark of
http://192.168.1.xxx or somewhere around there.
We need to tell Windows that were going to share the printer. Click Start and then Control Panel. Then double click on Printers and Faxes. Right-click on your printer, then select Properties. Select the Sharing tab, set Sharing to on, and name the Share something short and sweet. Dont use spaces, you dont want to make this more complicated than you have to. My printers name is printy, which I think is accurate.
Ever since Service Pack 2 came out for Windows, additional security measures have been set in place, so well need to manually open up an additional port, although we just told Windows to share the printer.
So go to Start > Control Panel > My Network Places > Network Connections. New task on the left: Change Windows Firewall Settings, then click on the Exceptions tab. Click on Add Port, enter "OS X printer" (or whatever you want) in Name and "515" in Port Number. Leave TCP selected, click OK, OK and youre done.
You might have to enable the Print Server service in the Services section of the Administrative Tools control panel. To check this, open Control Panel, then open Administrative Tools, then Services. Click on the Extended tab. Find the service TCP/IP Print Server, start it, and set it to start automatically.
Now we must set up print services for Unix. Click Start and then Control Panel. Double click on Add or Remove Programs. Click on Add/Remove Windows Components. Double click Other Network File and Print Services. Select Print Services for Unix. You might need your Windows XP CD, but I didnt. Click OK to go back to the Add/Remove panel. Close it.
Were done with the Windows box, now we need to get the Mac working with it.
Open a terminal window and type in:
cd /usr/libexec/cups/backend/
and then type in
sudo ln -s /usr/bin/smbspool smb
This creates a symbolic link for working with CUPS (Common Unix Printing System), if youre curious about what you just typed in. After the sudo command, it will ask you for a password, so you need to have administrators privileges.
Now start up printer sharing from the Sharing Preference Pane. If you have already started it, you need to turn it off and then on again for CUPS to pick up the changes.
Go to the CUPS web interface at
http://127.0.0.1:631
Select Add Printer. Give it a name, a location, and a description. These can be whatever you want.
Then choose:
LPD/LPR Host or Printer
The URI is in this format:
lpd://your.windows.ipaddress.from-earlier/your-printers-shared-name
Then choose the make and model. If they dont have it exactly, it will probably still work.
Thats it. Hopefully you can now print with ease from your toilet or your bed or wherever you want to now.