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