2.2.1.3.1 DRIVER_INFO and RPC_DRIVER_INFO Members

This section describes members commonly used in DRIVER_INFO (section 2.2.1.5) and RPC_DRIVER_INFO (section 2.2.1.3.1) structures.

pName: A pointer to a string that specifies the name of the printer driver; for example, "QMS 810". For rules governing printer driver names, see section 2.2.4.3.

cVersion: An implementation-specific value that identifies the driver version and the operating system version for which the printer driver was written. The driver version contained by each printer driver object in the "List of Printer Drivers" is described in section 3.1.1.<13>

ConfigFileArray (variable): A string that specifies a file name or a full path and file name for the printer driver configuration module. The location of this buffer is determined by the value of the ConfigFileOffset member.

ConfigFileOffset (4 bytes): An unsigned integer that specifies the number of bytes from the start of the structure to the start of the ConfigFileArray member.

DataFileArray (variable): A string that specifies a file name or a full path and file name for the file that contains printer driver data. The location of this buffer is determined by the value of the DataFileOffset member.

DataFileOffset (4 bytes): An unsigned integer that specifies the number of bytes from the start of the structure to the start of the DataFileArray member.

DefaultDataTypeArray (variable): A string that specifies the default data type of print jobs created by the driver. The location of this buffer is determined by the value of the DefaultDataTypeOffset member.

DefaultDataTypeOffset (4 bytes): An unsigned integer that specifies the number of bytes from the start of the structure to the start of the DefaultDataTypeArray member.

DependentFilesArray (variable): A multisz that specifies the names of the files that the printer driver is dependent on. The location of this buffer is determined by the value of the DependentFilesOffset member.

DependentFilesOffset (4 bytes): An unsigned integer that specifies the number of bytes from the start of the structure to the start of the DependentFilesArray member.

DriverPathArray (variable): A string that specifies a file name or full path and file name for the file that contains the printer driver. The location of this buffer is determined by the value of the DependentFilesOffset member.

DriverPathOffset (4 bytes): An unsigned integer that specifies the number of bytes from the start of the structure to the start of the DriverPathArray member.

EnvironmentArray (variable): A string that specifies the environment that the printer driver supports. The location of this buffer is determined by the value of the EnvironmentOffset member.

EnvironmentOffset (4 bytes): An unsigned integer that specifies the number of bytes from the start of the structure to the start of the EnvironmentArray member.

HardwareIDArray (variable): A string that specifies the hardware identifier for the printer driver. The location of this buffer is determined by the value of the HardwareIDOffset member.

HardwareIDOffset (4 bytes): An unsigned integer that specifies the number of bytes from the start of the structure to the start of the HardwareIDArray member

HelpFileArray (variable): A string that specifies a file name or a full path and file name for the printer driver help file. The location of this buffer is determined by the value of the HelpFileOffset member.

HelpFileOffset (4 bytes): An unsigned integer that specifies the number of bytes from the start of the structure to the start of the HelpFileArray member.

MfgNameArray (variable): A string that specifies the manufacturer's name. The location of this buffer is determined by the value of the MfgNameOffset member.

MfgNameOffset (4 bytes): An unsigned integer that specifies the number of bytes from the start of the structure to the start of the MfgNameArray member.

MonitorNameArray (variable): A string that specifies a language monitor. The location of this buffer is determined by the value of the MonitorNameOffset member.

MonitorNameOffset (4 bytes): An unsigned integer that specifies the number of bytes from the start of the structure to the start of the MonitorNameArray member.

szzPreviousNamesArray (variable): A multisz that specifies any previous printer drivers that are compatible with this driver. The location of this buffer is determined by the value of the szzPreviousNamesOffset member.

szzPreviousNamesOffset (4 bytes): An unsigned integer that specifies the number of bytes from the start of the structure to the start of the szzPreviousNamesArray member.

OEMUrlArray (variable): A string that specifies the URL for the manufacturer of the printer driver. The location of this buffer is determined by the value of the OEMUrlOffset member.

OEMUrlOffset (4 bytes): An unsigned integer that specifies the number of bytes from the start of the structure to the start of the OEMUrlArray member.

ProviderArray (variable): A string that specifies the publisher of the printer driver. The location of this buffer is determined by the value of the ProviderOffset member.

ProviderOffset (4 bytes): An unsigned integer that specifies the number of bytes from the start of the structure to the start of the ProviderArray member.

pEnvironment: A pointer to a string that specifies the environment that the printer driver supports. For rules governing environment names, see section 2.2.4.4.

pDriverPath: A pointer to a string that specifies a file name or full path and file name for the file that contains the printer driver. For further information on driver files, see [MSDN-MPD]. For rules governing path names, see section 2.2.4.9.

pDataFile: A pointer to a string that specifies a file name or a full path and file name for the file that contains printer driver data. For further information on driver files, see [MSDN-MPD]. For rules governing path names, see section 2.2.4.9.

pConfigFile: A pointer to a string that specifies a file name or a full path and file name for the printer driver configuration module. For further information on driver files, see [MSDN-MPD]. For rules governing path names, see section 2.2.4.9.

pHelpFile: An optional pointer to a string that specifies a file name or a full path and file name for the printer driver help file. For further information on driver files, see [MSDN-MPD]. For rules governing path names, see section 2.2.4.9.

pMonitorName: An optional pointer to a string that specifies a language monitor. For rules governing monitor names, see section 2.2.4.8.<14>

pDefaultDataType: An optional pointer to a string that specifies the default data type of print jobs created with this driver (for example, enhanced metafile spool format (EMFSPOOL) or RAW Format). For rules governing data type names, see section 2.2.4.2.

cchDependentFiles: The number of characters in the multisz pointed to by pDependentFiles.

pDependentFiles: An optional pointer to a multisz that specifies the names of the files that the printer driver is dependent on. If specified, this list MUST include at least one file name and SHOULD be ordered as follows:

  • The file name of the printer driver manifest, if present.

  • If the printer driver is a derived printer driver, the names of all the files the derived printer driver depends on. If the printer driver is not a derived printer driver, all of the other files the printer driver depends on.

  • If the printer driver is a derived printer driver, the file name of the printer driver manifest of the corresponding class printer driver.

  • If the printer driver is a derived printer driver, the names of all of the files the corresponding class printer driver depends on.<15>

cchPreviousNames: The value of this member MUST be the number of characters in the multisz pointed to by pszzPreviousNames.

pszzPreviousNames: An optional pointer to a multisz that specifies any previous printer drivers that are compatible with this driver.

dwlDriverVersion: The printer driver version number. The format of this number is specified by each printer driver manufacturer. A print client can use this value to determine whether a printer driver on the print server matches the version available on the client.<16>

ftDriverDate: The value of this member MUST be the manufacturer build date of the printer driver. The FILETIME format is specified in [MS-DTYP] section 2.3.3.

pMfgName: An optional pointer to a string that specifies the manufacturer's name.

pOEMUrl: An optional pointer to a string that specifies the URL for the manufacturer of the printer driver.

pHardwareID: An optional pointer to a string that specifies the hardware identifier for the printer driver.

pProvider: An optional pointer to a string that specifies the publisher of the printer driver.