To find out about the driver files, you have two options. You can check the contents of the driver
CDROM that came with your printer. Study the *.inf
files located on the CD-ROM. This
may not be possible, since the *.inf
file might be missing. Unfortunately, vendors have now started
to use their own installation programs. These installations packages are often in some Windows platform
archive format. Additionally, the files may be re-named during the installation process. This makes it
extremely difficult to identify the driver files required.
Then you have the second option. Install the driver locally on a Windows client and
investigate which filenames and paths it uses after they are installed. (You need to repeat
this procedure for every client platform you want to support. We show it here for the
W32X86 platform only, a name used by Microsoft for all Windows NT/200x/XP
clients.)
A good method to recognize the driver files is to print the test page from the driver's
Properties dialog (General tab). Then look at the list of
driver files named on the printout. You'll need to recognize what Windows (and Samba) are calling the
Driver File, Data File, Config File,
Help File, and (optionally) Dependent Driver Files
(this may vary slightly for Windows NT). You need to note all filenames for the next steps.
Another method to quickly test the driver filenames and related paths is provided by the
rpcclient
utility. Run it with
enumdrivers
or with the
getdriver
subcommand, each at the 3
info level. In the following example,
TURBO_XP
is the name of the Windows PC (in this case it was a Windows XP Professional
laptop). I installed the driver locally to TURBO_XP from a Samba server called KDE-BITSHOP
.
We could run an interactive
rpcclient
session; then we would get an
rpcclient />
prompt and would type the subcommands at this prompt. This is left as
a good exercise for you. For now, we use
rpcclient
with the -c
parameter to execute a single subcommand line and exit again. This is the method you use if you
want to create scripts to automate the procedure for a large number of printers and drivers. Note the
different quotation marks used to overcome the different spaces between words:
root#
rpcclient -U'Danka%xxxx' -c \
'getdriver "Heidelberg Digimaster 9110 (PS)" 3' TURBO_XP
cmd = getdriver "Heidelberg Digimaster 9110 (PS)" 3
[Windows NT x86]
Printer Driver Info 3:
Version: [2]
Driver Name: [Heidelberg Digimaster 9110 (PS)]
Architecture: [Windows NT x86]
Driver Path: [C:\WINNT\System32\spool\DRIVERS\W32X86\2\HDNIS01_de.DLL]
Datafile: [C:\WINNT\System32\spool\DRIVERS\W32X86\2\Hddm91c1_de.ppd]
Configfile: [C:\WINNT\System32\spool\DRIVERS\W32X86\2\HDNIS01U_de.DLL]
Helpfile: [C:\WINNT\System32\spool\DRIVERS\W32X86\2\HDNIS01U_de.HLP]
Dependentfiles: [C:\WINNT\System32\spool\DRIVERS\W32X86\2\Hddm91c1_de.DLL]
Dependentfiles: [C:\WINNT\System32\spool\DRIVERS\W32X86\2\Hddm91c1_de.INI]
Dependentfiles: [C:\WINNT\System32\spool\DRIVERS\W32X86\2\Hddm91c1_de.dat]
Dependentfiles: [C:\WINNT\System32\spool\DRIVERS\W32X86\2\Hddm91c1_de.cat]
Dependentfiles: [C:\WINNT\System32\spool\DRIVERS\W32X86\2\Hddm91c1_de.def]
Dependentfiles: [C:\WINNT\System32\spool\DRIVERS\W32X86\2\Hddm91c1_de.hre]
Dependentfiles: [C:\WINNT\System32\spool\DRIVERS\W32X86\2\Hddm91c1_de.vnd]
Dependentfiles: [C:\WINNT\System32\spool\DRIVERS\W32X86\2\Hddm91c1_de.hlp]
Dependentfiles: [C:\WINNT\System32\spool\DRIVERS\W32X86\2\HDNIS01Aux.dll]
Dependentfiles: [C:\WINNT\System32\spool\DRIVERS\W32X86\2\HDNIS01_de.NTF]
Monitorname: []
Defaultdatatype: []
You may notice that this driver has quite a large number of Dependent files
(there are worse cases, however). Also, strangely, the
Driver File is tagged here
Driver Path. We do not yet have support for the so-called
WIN40 architecture installed. This name is used by Microsoft for the Windows
9x/Me platforms. If we want to support these, we need to install the Windows 9x/Me driver files in
addition to those for W32X86 (i.e., the Windows NT 2000/XP clients) onto a
Windows PC. This PC can also host the Windows 9x/Me drivers, even if it runs on Windows NT, 2000, or XP.
Since the
[print$]
share is usually accessible through the Network
Neighborhood, you can also use the UNC notation from Windows Explorer to poke at it. The Windows
9x/Me driver files will end up in subdirectory 0
of the WIN40
directory. The full path to access them is \\WINDOWSHOST\print$\WIN40\0\
.