A method for communicating device settings from an application to a device
driver, by storing the settings in a temporary file, and communicating
the temporary file's name to the device driver. Application programming
interfaces (APIs) of programming languages often provide access to only a
subset of device settings. Fore example, Java and C APIs may provide
access to the common printer (public devmode) settings but not to the
optional and printer-model-specific (private devmode) settings. The
method enables communication of device settings not included in the APIs.
Methods include use of Java Native Interface call, encoding a temporary
file name in a job name, unique identification string in a job name,
unique file names supporting simultaneous, multiple jobs, and
modularization by a user interface package and a communication interface
package.