структура DRIVER_INFO_8A (winspool.h)
Структура DRIVER_INFO_8 содержит сведения о драйвере принтера.
Синтаксис
typedef struct _DRIVER_INFO_8A {
DWORD cVersion;
LPSTR pName;
LPSTR pEnvironment;
LPSTR pDriverPath;
LPSTR pDataFile;
LPSTR pConfigFile;
LPSTR pHelpFile;
LPSTR pDependentFiles;
LPSTR pMonitorName;
LPSTR pDefaultDataType;
LPSTR pszzPreviousNames;
FILETIME ftDriverDate;
DWORDLONG dwlDriverVersion;
LPSTR pszMfgName;
LPSTR pszOEMUrl;
LPSTR pszHardwareID;
LPSTR pszProvider;
LPSTR pszPrintProcessor;
LPSTR pszVendorSetup;
LPSTR pszzColorProfiles;
LPSTR pszInfPath;
DWORD dwPrinterDriverAttributes;
LPSTR pszzCoreDriverDependencies;
FILETIME ftMinInboxDriverVerDate;
DWORDLONG dwlMinInboxDriverVerVersion;
} DRIVER_INFO_8A, *PDRIVER_INFO_8A, *LPDRIVER_INFO_8A;
Члены
cVersion
Этот элемент указывает версию операционной системы, для которой был написан драйвер. В настоящее время это может быть следующее.
Значение | Значение |
---|---|
3 | Драйвер для Microsoft Windows 2000, XP или Windows Vista. |
pName
Указатель на строку, завершающуюся значением NULL, которая указывает имя драйвера (например, QMS 810).
pEnvironment
Указатель на строку, завершающуюся значением NULL, которая указывает среду, для которой был написан драйвер (например, Microsoft Windows 7, 8 или Windows Server 2012).
pDriverPath
Указатель на строку, завершающуюся пустым значением, которая указывает имя файла или полный путь и имя файла, содержащего драйвер устройства (например, C:\DRIVERS\Pscript.dll).
pDataFile
Указатель на строку, завершающуюся null, которая указывает имя файла или полный путь и имя файла, содержащего данные драйвера (например, C:\DRIVERS\Qms810.ppd).
pConfigFile
Указатель на строку, завершающуюся null, которая указывает имя файла или полный путь и имя файла для библиотеки динамической компоновки конфигурации драйвера устройства (например, C:\DRIVERS\Pscrptui.dll).
pHelpFile
Указатель на строку со значением NULL, которая указывает имя файла или полный путь и имя файла справки драйвера устройства (например, C:\DRIVERS\Pscrptui.hlp).
pDependentFiles
Указатель на строку Multi-SZ, содержащую имена файлов, от которых зависит драйвер. Имена файлов хранятся в виде непрерывного ряда строк, завершаемых с нуля, за которыми следует пустая строка. Например, Pscript.dll\0QMS810.ppd\0Pscriptui.dll\0Pscriptui.hlp\0Pstest.txt\0\0, где \0 представляет завершающий символ NULL.
pMonitorName
Указатель на строку, завершающуюся значением NULL, которая указывает языковой монитор (например, "Монитор PJL"). Этот элемент может иметь значение NULL и должен быть указан только для принтеров, поддерживающих двунаправленную связь.
pDefaultDataType
Указатель на строку, завершающуюся значением NULL, которая указывает тип данных по умолчанию для задания печати (например, "EMF").
pszzPreviousNames
Указатель на строку со значением NULL, которая указывает все предыдущие имена драйверов принтера, совместимые с этим драйвером (например, OldName1\0OldName2\0\0).
ftDriverDate
Дата пакета драйвера, закодированная в файлах драйверов.
dwlDriverVersion
Номер версии драйвера. Это происходит из структуры версий драйвера.
pszMfgName
Указатель на строку, завершающуюся нулевым значением, которая указывает имя производителя.
pszOEMUrl
Указатель на строку, завершающуюся значением NULL, которая указывает URL-адрес производителя.
pszHardwareID
Указатель на строку, завершающуюся значением NULL, которая указывает идентификатор оборудования для драйвера принтера.
pszProvider
Указатель на строку, завершающуюся значением NULL, которая указывает поставщика драйвера принтера (например, "Microsoft Windows 8").
pszPrintProcessor
Указатель на строку, завершающуюся значением NULL, которая указывает имя процессора печати, связанного с драйвером принтера.
pszVendorSetup
Указатель на строку, завершающуюся пустым значением, которая указывает dll-библиотеку установки поставщика и точку входа для установки поставщика, связанную с драйвером принтера.
pszzColorProfiles
Указатель на строку, завершающуюся значением NULL, которая указывает все цветовые профили, связанные с драйвером принтера.
pszInfPath
Указатель на строку, завершающуюся значением NULL, которая указывает путь к INF-файлу в хранилище драйверов, из которого был установлен драйвер принтера. Должно иметь значение NULL при использовании функций AddPrinterDriver или AddPrinterDriverEx с DRIVER_INFO_8.
dwPrinterDriverAttributes
Этот элемент задает свойства, связанные с драйвером принтера. Значение должно быть равно нулю при использовании функций AddPrinterDriver или AddPrinterDriverEx с DRIVER_INFO_8. В следующей таблице показаны флаги, определенные для параметра dwPrinterDriverAttributes .
Имя или значение флага | Значение | Минимальная ОС |
---|---|---|
PRINTER_DRIVER_PACKAGE_AWARE 0x00000001 |
Драйвер принтера является частью пакета драйверов. | Windows Vista |
PRINTER_DRIVER_XPS 0x00000002 |
Драйвер принтера поддерживает формат Microsoft XPS, описанный в разделе Спецификация XML-бумаги: обзор, а также в разделе Поведение продукта, раздел <27>. | Windows 8 Windows Server 2012 |
PRINTER_DRIVER_SANDBOX_ENABLED 0x00000004 |
Драйвер принтера совместим с изоляцией драйвера принтера. Дополнительные сведения см. в разделе Поведение продукта, раздел <28>. | Windows 7 Windows Server 2008 R2 |
PRINTER_DRIVER_CLASS 0x00000008 |
Драйвер принтера — это драйвер принтера класса. | Windows 8 Windows Server 2012 |
PRINTER_DRIVER_DERIVED 0x00000010 |
Драйвер принтера является производным драйвером принтера. | Windows 8 Windows Server 2012 |
PRINTER_DRIVER_NOT_SHAREABLE 0x00000020 |
Принтеры, использующие этот драйвер принтера, не могут быть общими. | Windows 8 Windows Server 2012 |
PRINTER_DRIVER_CATEGORY_FAX 0x00000040 |
Драйвер принтера предназначен для использования с принтерами факсов. | Windows 8 Windows Server 2012 |
PRINTER_DRIVER_CATEGORY_FILE 0x00000080 |
Драйвер принтера предназначен для использования с файловыми принтерами. | Windows 8 Windows Server 2012 |
PRINTER_DRIVER_CATEGORY_VIRTUAL 0x00000100 |
Драйвер принтера предназначен для использования с виртуальными принтерами. | Windows 8 Windows Server 2012 |
PRINTER_DRIVER_CATEGORY_SERVICE 0x00000200 |
Драйвер принтера предназначен для использования со служебными принтерами. | Windows 8 Windows Server 2012 |
PRINTER_DRIVER_SOFT_RESET_REQUIRED 0x00000400 |
Принтеры, использующие этот драйвер принтера, должны соответствовать рекомендациям, изложенным в разделе Определение класса USB-устройства. Дополнительные сведения см. в разделе Поведение продукта, раздел <36>. | Windows 8 Windows Server 2012 |
PRINTER_DRIVER_CATEGORY_3D 0x00001000 |
Драйвер принтера предназначен для использования с трехмерными принтерами. | Windows 8 Windows Server 2012 |
pszzCoreDriverDependencies
Указатель на строку, завершающуюся значением NULL, которая содержит все зависимости драйвера основного принтера для пакета драйвера, определенного в pszInfPath. Должно иметь значение NULL при использовании функций AddPrinterDriver или AddPrinterDriverEx с DRIVER_INFO_8.
ftMinInboxDriverVerDate
Самая ранняя допустимая дата всех драйверов, которые поставляются с Windows и от которых зависит этот драйвер.
dwlMinInboxDriverVerVersion
Самая ранняя разрешенная версия всех драйверов, поставляемых с Windows и от которых зависит этот драйвер.
Комментарии
Строки для этих элементов содержатся в INF-файле, который используется для добавления драйвера.
Если вы вызываете AddPrinterDriver или AddPrinterDriverEx с уровнем, не равным 6 или 8, а затем вызывается GetPrinterDriver или EnumPrinterDrivers с уровнем, равным 6 или 8, структура DRIVER_INFO_8 возвращается с pszMfgName, pszOEMUrl, pszHardwareID, а pszProvider — null, dwlDriverVersion — равным нулю, а ftDriverDate — значением (0,0).
Требования
Требование | Значение |
---|---|
Заголовок | winspool.h (включая Winspool.h) |