Vista: Adding a printer connection fails

Martin Zielinski mz at seh.de
Tue Feb 6 08:34:57 GMT 2007


Hello list!

The error case has been originally described in the samba list with the 
subject "Vista can't use samba hosted printer drivers"

Using samba 3.0.23d and a printer with a "HP 4000 PCL6" driver from XP.

Problem:
When one tries to install a network printer from samba the execution 
aborts with the error 0x00000057 ( = invalid parameter).

How to reproduce:
1st. Make a fresh install: remove ntprinters.tdb and assign the driver 
via an rpcclient call.
  => If you try now to connect with vista, everything is ok

2nd. Enter the printers folder from Vista or XP and rightclick on the 
printer -> properties -> publish printer in the ADS.
  => Try now to connect with vista and this time Vista produces the 
error. (And the properties dialog shows no "printing preferences" button).

What fails:
The failed System call is an "GetPrinterDriver" call from the Vista 
client. Not to mistake with the RPC call itself. It's the library call 
the produces lots of traffic afterwards (GetPrinter calls, enum the 
registry etc.)

When does it fail:
When publishing the printer to the ADS, Samba adds a binary registry 
value "objectGUID" to the DsSpooler key. (BTW - my XP client publishes 
the printer automaticly when I open the properties dialog in the 
"Printers and Faxes" folder on the Samba server with admin rights).

I renamed the key - no change
I changed the size of the data - no change
Added a random key after that key (buffer size???) - no change

I changed the key type from REG_BINARY to REG_SZ - no error anymore!
Also, if I add another key to the printers registry (FOO) - no error!

Why does it fail:
I have no idea at the moment. Anyone?
Tried to find alignment issues or sizes - found nothing.
Also the enumeration of the printers registry is successfull - in every 
case.

If I could see this error somewhere on XP, I'd assume it is a Vista bug.
But until then - It stays at Samba.

I hope someone gets an idea due to this observations.

Regards,

Martin

-- 
Martin Zielinski             mz at seh.de
Software Development
SEH Computertechnik GmbH     www.seh.de



More information about the samba-technical mailing list