Copied and pasted from my other reply - http://forums.microsoft.com/WindowsOneCare/ShowPost.aspx?PostID=2763585&SiteID=2
OneCare Printer Sharing functionality is designed to simply sharing a printer attached locally to a PC to other PCs running OneCare. It does not share printers to PCs not running OneCare, it does not share printers that are not attached locally to the PC, and it does not share printers between 32 bit and 64 bit operating systems due to driver issues.
I believe your problem is related to the firewall. You can confirm this by disabling the OneCare firewall temporarily. (open OneCare, change settings, firewall tab, select Off, and click OK)
If it works, then enable the firewall again and do the following.
Open OneCare
Click Change Settings
On the firewall tab, click configure firewall
If the network is shown as Public, click Change Location to change it to "Home or Work."
Click the Advanced Settings button
Click Network connections tab.
If there are multiple active connections shown, you may need to disable them in your Windows network connections settings. (Network and Sharing Center, manage connections, in Vista; Right click My Network Places and select Properties on the Start menu in XP)
On the Ports and Protocols tab, add a check mark next to File and Printer Sharing - for subnet and Internet if the first setting alone (after all of the above are verified) does not allow Sharing to work.
If all of the above fail, please contact support.
How to reach support (FAQ) - http://forums.microsoft.com/WindowsOneCare/ShowPost.aspx?PostID=2421771&SiteID=2
-steve