Installing drivers through PnP

Vopni, Jim JimV at metrics.com
Fri Oct 19 08:16:07 GMT 2001


Peter:

We have been struggling with this issue for a while here.  We have been 
trying to determine the exact behaviour of a NT Server and trying to relate 
this to behaviour missing in Samba. When running AddPrinter to a remote NT 
Server and specifying a Print Driver there seems to be some side affects. 
After the call to the remote NT server there exists entries in the registry.
It seems the DLLs are loaded into the spooler on the server and default 
values are created.  

This seems to be the reason why MS forces you to add a NT4.0 driver before 
you can add a 9x one.

On Samba, when you go to the Properties window and save setting many of
these 
defaults will then show up.    Unfortunately for some drivers not all are 
set.  The problematic one that is not set is the SPLUserModePrinterDriver
entry.  
Without this entry the drivers we are using send "garbage" prefixed to the 
datastream. If we manually do a SetPrinterData call setting the 
SPLUserModePrinterDriver then everything starts to work.
This seems to be the only one that stops us from printing.  The
recommendation
would be that after installation a printer you should go and set the default
properties and not rely on defaults (which may not exist)
You really shouldn't be missing the "DependentFiles" entry because this is
specified in the AddDrivers

We have done quite a bit of testing with Canon drivers and most, but not
all,
of their PCL drivers have this issue.  I think it depends on the author of
the
driver and what behaviour they have if entries are missing. We have added a 
hack to Samba to set the SPLUserModePrinterDriver entry if it is using a
driver 
we have noticed with this problem.

I am not sure how this problem can be dealt with in Samba since the DLL code

can not be run and we haven't seen any way to anticipate the required
settings. 
It looks like it may need to handled by getting the driver authors 
to stop relying on this initialization of the registry settings.

..Jim
----------------
Jim Vopni			Software Metrics
jimv at metrics.com		450 Philips St
(519) 885-2458 x222	Waterloo Ont. N2L 5J2



-----Original Message-----
From: Peter Lai [mailto:peterfun1122 at hotmail.com]
Sent: Thursday, October 18, 2001 6:50 PM
To: samba-technical at lists.samba.org
Subject: Installing drivers through PnP


Hi

I am working on making NT Pnp work with our system.  Everything went well 
except there seems to be some specifies keyword missing in the ntdrivers.tdb

database, like FeatureKeyword, DependentFiles and SPLUserModePrinterDriver, 
so when someone tries to install, it doesn't show up in the registries 
(printers\<printer name>\printerDriverData.  I tried both using rpcclient 
(Which doesn't have the devmode and specifies in the NT_PRINTER_INFO_LEVEL_2

structure) and through uploading driver in properties but the entries were 
missing in either case...

One thing I notice though, is after I change something like finisher in 
properties and then change something like default papersize in document 
default, the missing entries will show up in tdb files, so after the first 
install, the database seems complete.  After the first machine install, and 
I can install the driver to other machines no problem, but the first 
machine's registries would still mess up.

Any idea would be welcome
Thanks for your wonderful work!
-Peter

_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp





More information about the samba-technical mailing list