Summary:
Print server is 2008 R2. Has 64 bit drivers installed. Clients are Win7 x64 and WinXP x32 SP3. Printer installs work fine in XP, fail in Win7. Error message is "Printer installation failed. The printer name is invalid".
Note: Print server name removed and replaced with <printservername> due to corp SOP. Print server name does resolve correctly.
Details:
Can install printers by going to \\<printservername>\printer but not via IPP/web page. When I go to http://<printservername>/printers and click on Connect to install a printer (e.g. printer 0001) I get successfully redirected to http://<printservername>/printers/ipp_0004.asp?view=q&eprinter=0001&page=1961 just like XP. In XP when I click connect it tries to add the connection as \\<printserver>\printer and this works. When I clock Connect in Win7 it tries to install using the path http://<printeservername>/printers/0001/.printer. This fails with the "Printer installation failed. The printer name is invalid" message. I looked at the ipp_004.asp file and I *think* something is getting lost in translation with the strComputer and strPrinter variables.
I *think* the line:
objHelper.open "\\" & strComputer & "\" & strPrinter
Is what forms the install path and for some reason it's fubar in Win7. Note that server and client are fully patched. I found 3 possible hotfixes and DL'd from MS but none worked.
http://support.microsoft.com/kb/2695207
KB982643
KB2616471
Also shut down Symantec firewall and added port exception for port 631 to Windows firewall on server and shut down both firewalls on the client. Still no worky...Although when I check open ports on the server I don't see anything listening on port 631. Also IIRC the native port 80 should pass the IPP traffic, so this may not even be needed.
Additional info: I have a 2003 server that I that resolves the install path for Win7 just like the 2008 R2 server (http://<printeservername>/printers/0001/.printer) but does not throw the "printer name is invalid" error, instead it fails with "current CPU platfrom" message, which is of course expected as it's all 32bit on the 2003 server.
Did the usual internet searching and searched on this forum but haven't found a solution yet. Please assist.
UPDATE: It seems XP clients are defaulting to RPC and that is why XP clients are using \\<printserver>\<printer> for the connection string. According to this site http://technet.microsoft.com/en-us/library/cc776698(WS.10).aspx:
*********
The installation uses HTTP instead of RPC in the following instances:
The client and server are not on the same intranet.
The client is not running Windows Server 2003, Windows XP Professional, Windows 2000, or Windows NT 4.0.
The printer contains an internal network adapter, supports Internet Printing Protocol 1.0, and is not connected to a server.
**********
My guess is this is why it's defaulting to http and failing. I have tried changing authentication settings for IIS to no avail, tried basic, anonymous, and Windows Auth. If I uses a FQDN for the printer server name I get prompt and pass credentials, but the install still fails.