809 lines
45 KiB
C
809 lines
45 KiB
C
/*++
|
|
|
|
Copyright (c) 1990-1996 Microsoft Corporation
|
|
All rights reserved
|
|
|
|
Module Name:
|
|
|
|
data.h
|
|
|
|
Abstract:
|
|
|
|
Common definitions for structure offsets for pointer based data.
|
|
|
|
Author:
|
|
|
|
Environment:
|
|
|
|
User Mode - Win32
|
|
|
|
Revision History:
|
|
|
|
Notes:
|
|
|
|
FOR ADDING OR UPDATING Offset structures.
|
|
|
|
All the offsets should appear in ascending order in the struct. This is critical
|
|
for converting 32 bit structures into the corresponding 64 bit structures. Custom
|
|
marshalling will break if this is not adhered to.
|
|
|
|
See spllib\marshall.cxx for additional information
|
|
|
|
--*/
|
|
|
|
#ifndef _DATA_H
|
|
#define _DATA_H
|
|
|
|
#include <offsets.h>
|
|
#include <winsprlp.h>
|
|
|
|
#ifdef PRINTER_OFFSETS
|
|
DWORD PrinterInfoStressOffsets[]={offsetof(PRINTER_INFO_STRESSA, pPrinterName),
|
|
offsetof(PRINTER_INFO_STRESSA, pServerName),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo1Offsets[]={offsetof(PRINTER_INFO_1A, pDescription),
|
|
offsetof(PRINTER_INFO_1A, pName),
|
|
offsetof(PRINTER_INFO_1A, pComment),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo2Offsets[]={offsetof(PRINTER_INFO_2A, pServerName),
|
|
offsetof(PRINTER_INFO_2A, pPrinterName),
|
|
offsetof(PRINTER_INFO_2A, pShareName),
|
|
offsetof(PRINTER_INFO_2A, pPortName),
|
|
offsetof(PRINTER_INFO_2A, pDriverName),
|
|
offsetof(PRINTER_INFO_2A, pComment),
|
|
offsetof(PRINTER_INFO_2A, pLocation),
|
|
offsetof(PRINTER_INFO_2A, pDevMode),
|
|
offsetof(PRINTER_INFO_2A, pSepFile),
|
|
offsetof(PRINTER_INFO_2A, pPrintProcessor),
|
|
offsetof(PRINTER_INFO_2A, pDatatype),
|
|
offsetof(PRINTER_INFO_2A, pParameters),
|
|
offsetof(PRINTER_INFO_2A, pSecurityDescriptor),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo3Offsets[]={offsetof(PRINTER_INFO_3, pSecurityDescriptor),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo4Offsets[]={offsetof(PRINTER_INFO_4A, pPrinterName),
|
|
offsetof(PRINTER_INFO_4A, pServerName),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo5Offsets[]={offsetof(PRINTER_INFO_5A, pPrinterName),
|
|
offsetof(PRINTER_INFO_5A, pPortName),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo6Offsets[]={0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo7Offsets[]={offsetof(PRINTER_INFO_7A, pszObjectGUID),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo8Offsets[]={offsetof(PRINTER_INFO_8A, pDevMode),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo9Offsets[]={offsetof(PRINTER_INFO_9A, pDevMode),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
#ifdef PRINTER_STRINGS
|
|
DWORD PrinterInfoStressStrings[]={offsetof(PRINTER_INFO_STRESSA, pPrinterName),
|
|
offsetof(PRINTER_INFO_STRESSA, pServerName),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo1Strings[]={offsetof(PRINTER_INFO_1A, pDescription),
|
|
offsetof(PRINTER_INFO_1A, pName),
|
|
offsetof(PRINTER_INFO_1A, pComment),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo2Strings[]={offsetof(PRINTER_INFO_2A, pServerName),
|
|
offsetof(PRINTER_INFO_2A, pPrinterName),
|
|
offsetof(PRINTER_INFO_2A, pShareName),
|
|
offsetof(PRINTER_INFO_2A, pPortName),
|
|
offsetof(PRINTER_INFO_2A, pDriverName),
|
|
offsetof(PRINTER_INFO_2A, pComment),
|
|
offsetof(PRINTER_INFO_2A, pLocation),
|
|
offsetof(PRINTER_INFO_2A, pSepFile),
|
|
offsetof(PRINTER_INFO_2A, pPrintProcessor),
|
|
offsetof(PRINTER_INFO_2A, pDatatype),
|
|
offsetof(PRINTER_INFO_2A, pParameters),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo3Strings[]={0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo4Strings[]={offsetof(PRINTER_INFO_4A, pPrinterName),
|
|
offsetof(PRINTER_INFO_4A, pServerName),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo5Strings[]={offsetof(PRINTER_INFO_5A, pPrinterName),
|
|
offsetof(PRINTER_INFO_5A, pPortName),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo6Strings[]={0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo7Strings[]={offsetof(PRINTER_INFO_7A, pszObjectGUID),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo8Strings[]={0xFFFFFFFF};
|
|
|
|
DWORD PrinterInfo9Strings[]={0xFFFFFFFF};
|
|
|
|
#endif
|
|
|
|
|
|
#ifdef JOB_OFFSETS
|
|
DWORD JobInfo1Offsets[]={offsetof(JOB_INFO_1A, pPrinterName),
|
|
offsetof(JOB_INFO_1A, pMachineName),
|
|
offsetof(JOB_INFO_1A, pUserName),
|
|
offsetof(JOB_INFO_1A, pDocument),
|
|
offsetof(JOB_INFO_1A, pDatatype),
|
|
offsetof(JOB_INFO_1A, pStatus),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD JobInfo2Offsets[]={offsetof(JOB_INFO_2, pPrinterName),
|
|
offsetof(JOB_INFO_2, pMachineName),
|
|
offsetof(JOB_INFO_2, pUserName),
|
|
offsetof(JOB_INFO_2, pDocument),
|
|
offsetof(JOB_INFO_2, pNotifyName),
|
|
offsetof(JOB_INFO_2, pDatatype),
|
|
offsetof(JOB_INFO_2, pPrintProcessor),
|
|
offsetof(JOB_INFO_2, pParameters),
|
|
offsetof(JOB_INFO_2, pDriverName),
|
|
offsetof(JOB_INFO_2, pDevMode),
|
|
offsetof(JOB_INFO_2, pStatus),
|
|
offsetof(JOB_INFO_2, pSecurityDescriptor),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD JobInfo3Offsets[]={0xFFFFFFFF};
|
|
#endif
|
|
|
|
#ifdef JOB_STRINGS
|
|
DWORD JobInfo1Strings[]={offsetof(JOB_INFO_1A, pPrinterName),
|
|
offsetof(JOB_INFO_1A, pMachineName),
|
|
offsetof(JOB_INFO_1A, pUserName),
|
|
offsetof(JOB_INFO_1A, pDocument),
|
|
offsetof(JOB_INFO_1A, pDatatype),
|
|
offsetof(JOB_INFO_1A, pStatus),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD JobInfo2Strings[]={offsetof(JOB_INFO_2, pPrinterName),
|
|
offsetof(JOB_INFO_2, pMachineName),
|
|
offsetof(JOB_INFO_2, pUserName),
|
|
offsetof(JOB_INFO_2, pDocument),
|
|
offsetof(JOB_INFO_2, pNotifyName),
|
|
offsetof(JOB_INFO_2, pDatatype),
|
|
offsetof(JOB_INFO_2, pPrintProcessor),
|
|
offsetof(JOB_INFO_2, pParameters),
|
|
offsetof(JOB_INFO_2, pDriverName),
|
|
offsetof(JOB_INFO_2, pStatus),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD JobInfo3Strings[]={0xFFFFFFFF};
|
|
#endif
|
|
|
|
|
|
#ifdef DRIVER_OFFSETS
|
|
DWORD DriverInfo1Offsets[]={offsetof(DRIVER_INFO_1A, pName),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD DriverInfo2Offsets[]={offsetof(DRIVER_INFO_2A, pName),
|
|
offsetof(DRIVER_INFO_2A, pEnvironment),
|
|
offsetof(DRIVER_INFO_2A, pDriverPath),
|
|
offsetof(DRIVER_INFO_2A, pDataFile),
|
|
offsetof(DRIVER_INFO_2A, pConfigFile),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD DriverInfo3Offsets[]={offsetof(DRIVER_INFO_3A, pName),
|
|
offsetof(DRIVER_INFO_3A, pEnvironment),
|
|
offsetof(DRIVER_INFO_3A, pDriverPath),
|
|
offsetof(DRIVER_INFO_3A, pDataFile),
|
|
offsetof(DRIVER_INFO_3A, pConfigFile),
|
|
offsetof(DRIVER_INFO_3A, pHelpFile),
|
|
offsetof(DRIVER_INFO_3A, pDependentFiles),
|
|
offsetof(DRIVER_INFO_3A, pMonitorName),
|
|
offsetof(DRIVER_INFO_3A, pDefaultDataType),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD DriverInfo4Offsets[]={offsetof(DRIVER_INFO_4A, pName),
|
|
offsetof(DRIVER_INFO_4A, pEnvironment),
|
|
offsetof(DRIVER_INFO_4A, pDriverPath),
|
|
offsetof(DRIVER_INFO_4A, pDataFile),
|
|
offsetof(DRIVER_INFO_4A, pConfigFile),
|
|
offsetof(DRIVER_INFO_4A, pHelpFile),
|
|
offsetof(DRIVER_INFO_4A, pDependentFiles),
|
|
offsetof(DRIVER_INFO_4A, pMonitorName),
|
|
offsetof(DRIVER_INFO_4A, pDefaultDataType),
|
|
offsetof(DRIVER_INFO_4A, pszzPreviousNames),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD DriverInfo5Offsets[]={offsetof(DRIVER_INFO_2A, pName),
|
|
offsetof(DRIVER_INFO_2A, pEnvironment),
|
|
offsetof(DRIVER_INFO_2A, pDriverPath),
|
|
offsetof(DRIVER_INFO_2A, pDataFile),
|
|
offsetof(DRIVER_INFO_2A, pConfigFile),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD DriverInfo6Offsets[]={offsetof(DRIVER_INFO_6A, pName),
|
|
offsetof(DRIVER_INFO_6A, pEnvironment),
|
|
offsetof(DRIVER_INFO_6A, pDriverPath),
|
|
offsetof(DRIVER_INFO_6A, pDataFile),
|
|
offsetof(DRIVER_INFO_6A, pConfigFile),
|
|
offsetof(DRIVER_INFO_6A, pHelpFile),
|
|
offsetof(DRIVER_INFO_6A, pDependentFiles),
|
|
offsetof(DRIVER_INFO_6A, pMonitorName),
|
|
offsetof(DRIVER_INFO_6A, pDefaultDataType),
|
|
offsetof(DRIVER_INFO_6A, pszzPreviousNames),
|
|
offsetof(DRIVER_INFO_6A, pszMfgName),
|
|
offsetof(DRIVER_INFO_6A, pszOEMUrl),
|
|
offsetof(DRIVER_INFO_6A, pszHardwareID),
|
|
offsetof(DRIVER_INFO_6A, pszProvider),
|
|
0xFFFFFFFF};
|
|
|
|
|
|
#endif
|
|
|
|
#ifdef DRIVER_STRINGS
|
|
DWORD DriverInfo1Strings[]={offsetof(DRIVER_INFO_1A, pName),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD DriverInfo2Strings[]={offsetof(DRIVER_INFO_2A, pName),
|
|
offsetof(DRIVER_INFO_2A, pEnvironment),
|
|
offsetof(DRIVER_INFO_2A, pDriverPath),
|
|
offsetof(DRIVER_INFO_2A, pDataFile),
|
|
offsetof(DRIVER_INFO_2A, pConfigFile),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD DriverInfo3Strings[]={offsetof(DRIVER_INFO_3A, pName),
|
|
offsetof(DRIVER_INFO_3A, pEnvironment),
|
|
offsetof(DRIVER_INFO_3A, pDriverPath),
|
|
offsetof(DRIVER_INFO_3A, pDataFile),
|
|
offsetof(DRIVER_INFO_3A, pConfigFile),
|
|
offsetof(DRIVER_INFO_3A, pHelpFile),
|
|
offsetof(DRIVER_INFO_3A, pMonitorName),
|
|
offsetof(DRIVER_INFO_3A, pDefaultDataType),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD DriverInfo4Strings[]={offsetof(DRIVER_INFO_4A, pName),
|
|
offsetof(DRIVER_INFO_4A, pEnvironment),
|
|
offsetof(DRIVER_INFO_4A, pDriverPath),
|
|
offsetof(DRIVER_INFO_4A, pDataFile),
|
|
offsetof(DRIVER_INFO_4A, pConfigFile),
|
|
offsetof(DRIVER_INFO_4A, pHelpFile),
|
|
offsetof(DRIVER_INFO_4A, pMonitorName),
|
|
offsetof(DRIVER_INFO_4A, pDefaultDataType),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD DriverInfo5Strings[]={offsetof(DRIVER_INFO_2A, pName),
|
|
offsetof(DRIVER_INFO_2A, pEnvironment),
|
|
offsetof(DRIVER_INFO_2A, pDriverPath),
|
|
offsetof(DRIVER_INFO_2A, pDataFile),
|
|
offsetof(DRIVER_INFO_2A, pConfigFile),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD DriverInfo6Strings[]={offsetof(DRIVER_INFO_6A, pName),
|
|
offsetof(DRIVER_INFO_6A, pEnvironment),
|
|
offsetof(DRIVER_INFO_6A, pDriverPath),
|
|
offsetof(DRIVER_INFO_6A, pDataFile),
|
|
offsetof(DRIVER_INFO_6A, pConfigFile),
|
|
offsetof(DRIVER_INFO_6A, pHelpFile),
|
|
offsetof(DRIVER_INFO_6A, pMonitorName),
|
|
offsetof(DRIVER_INFO_6A, pDefaultDataType),
|
|
offsetof(DRIVER_INFO_6A, pszMfgName),
|
|
offsetof(DRIVER_INFO_6A, pszOEMUrl),
|
|
offsetof(DRIVER_INFO_6A, pszHardwareID),
|
|
offsetof(DRIVER_INFO_6A, pszProvider),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD DriverInfoVersionStrings[]={offsetof(DRIVER_INFO_VERSION, pName),
|
|
offsetof(DRIVER_INFO_VERSION, pEnvironment),
|
|
offsetof(DRIVER_INFO_VERSION, pMonitorName),
|
|
offsetof(DRIVER_INFO_VERSION, pDefaultDataType),
|
|
offsetof(DRIVER_INFO_VERSION, pszMfgName),
|
|
offsetof(DRIVER_INFO_VERSION, pszOEMUrl),
|
|
offsetof(DRIVER_INFO_VERSION, pszHardwareID),
|
|
offsetof(DRIVER_INFO_VERSION, pszProvider),
|
|
0xFFFFFFFF};
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#ifdef ADDJOB_OFFSETS
|
|
DWORD AddJobOffsets[]={offsetof(ADDJOB_INFO_1A, Path),
|
|
0xFFFFFFFF};
|
|
DWORD AddJob2Offsets[]={offsetof(ADDJOB_INFO_2W, pData),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
#ifdef ADDJOB_STRINGS
|
|
DWORD AddJobStrings[]={offsetof(ADDJOB_INFO_1A, Path),
|
|
0xFFFFFFFF};
|
|
DWORD AddJob2Strings[]={offsetof(ADDJOB_INFO_2W, pData),
|
|
0xFFFFFFFF};
|
|
|
|
#endif
|
|
|
|
|
|
#ifdef FORM_OFFSETS
|
|
DWORD FormInfo1Offsets[]={offsetof(FORM_INFO_1A, pName),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
#ifdef FORM_STRINGS
|
|
DWORD FormInfo1Strings[]={offsetof(FORM_INFO_1A, pName),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
|
|
#ifdef PORT_OFFSETS
|
|
DWORD PortInfo1Offsets[]={offsetof(PORT_INFO_1A, pName),
|
|
0xFFFFFFFF};
|
|
DWORD PortInfo2Offsets[]={offsetof(PORT_INFO_2A, pPortName),
|
|
offsetof(PORT_INFO_2A, pMonitorName),
|
|
offsetof(PORT_INFO_2A, pDescription),
|
|
0xFFFFFFFF};
|
|
DWORD PortInfo3Offsets[]={offsetof(PORT_INFO_3A, pszStatus),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
#ifdef PORT_STRINGS
|
|
DWORD PortInfo1Strings[]={offsetof(PORT_INFO_1A, pName),
|
|
0xFFFFFFFF};
|
|
DWORD PortInfo2Strings[]={offsetof(PORT_INFO_2A, pPortName),
|
|
offsetof(PORT_INFO_2A, pMonitorName),
|
|
offsetof(PORT_INFO_2A, pDescription),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
|
|
#ifdef PRINTPROCESSOR_OFFSETS
|
|
DWORD PrintProcessorInfo1Offsets[]={offsetof(PRINTPROCESSOR_INFO_1A, pName),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
#ifdef PRINTPROCESSOR_STRINGS
|
|
DWORD PrintProcessorInfo1Strings[]={offsetof(PRINTPROCESSOR_INFO_1A, pName),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
|
|
#ifdef MONITOR_OFFSETS
|
|
DWORD MonitorInfo1Offsets[]={offsetof(MONITOR_INFO_1A, pName),
|
|
0xFFFFFFFF};
|
|
DWORD MonitorInfo2Offsets[]={offsetof(MONITOR_INFO_2A, pName),
|
|
offsetof(MONITOR_INFO_2A, pEnvironment),
|
|
offsetof(MONITOR_INFO_2A, pDLLName),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
#ifdef MONITOR_STRINGS
|
|
DWORD MonitorInfo1Strings[]={offsetof(MONITOR_INFO_1A, pName),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD MonitorInfo2Strings[]={offsetof(MONITOR_INFO_2A, pName),
|
|
offsetof(MONITOR_INFO_2A, pEnvironment),
|
|
offsetof(MONITOR_INFO_2A, pDLLName),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
|
|
#ifdef DOCINFO_OFFSETS
|
|
DWORD DocInfo1Offsets[]={offsetof(DOC_INFO_1A, pDocName),
|
|
offsetof(DOC_INFO_1A, pOutputFile),
|
|
offsetof(DOC_INFO_1A, pDatatype),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
#ifdef DOCINFO_STRINGS
|
|
DWORD DocInfo1Strings[]={offsetof(DOC_INFO_1A, pDocName),
|
|
offsetof(DOC_INFO_1A, pOutputFile),
|
|
offsetof(DOC_INFO_1A, pDatatype),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
|
|
#ifdef DATATYPE_OFFSETS
|
|
DWORD DatatypeInfo1Offsets[]={offsetof(DATATYPES_INFO_1A, pName),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
#ifdef DATATYPE_STRINGS
|
|
|
|
DWORD DatatypeInfo1Strings[]={offsetof(DATATYPES_INFO_1A, pName),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
|
|
#ifdef PRINTER_ENUM_VALUES_OFFSETS
|
|
|
|
DWORD PrinterEnumValuesOffsets[] = {offsetof(PRINTER_ENUM_VALUESA, pValueName),
|
|
offsetof(PRINTER_ENUM_VALUESA, pData),
|
|
0xFFFFFFFF};
|
|
#endif
|
|
|
|
#ifdef PROVIDOR_STRINGS
|
|
DWORD ProvidorInfo1Strings[]={offsetof(PROVIDOR_INFO_1A, pName),
|
|
offsetof(PROVIDOR_INFO_1A, pEnvironment),
|
|
offsetof(PROVIDOR_INFO_1A, pDLLName),
|
|
0xFFFFFFFF};
|
|
|
|
DWORD ProvidorInfo2Strings[]={0xFFFFFFFF};
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef PRINTER_OFFSETS
|
|
FieldInfo PrinterInfoStressFields[]={
|
|
{offsetof(PRINTER_INFO_STRESSA, pPrinterName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, pServerName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, cJobs), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, cTotalJobs), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, cTotalBytes), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, stUpTime), sizeof(SYSTEMTIME), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, MaxcRef), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, cTotalPagesPrinted), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, dwGetVersion), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, fFreeBuild), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, cSpooling), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, cRef), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, cSpooling), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, cErrorOutOfPaper), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, cErrorNotReady), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, cJobError), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, dwNumberOfProcessors), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, dwProcessorType), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, dwHighPartTotalBytes), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, cChangeID), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, dwLastError), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, Status), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, cEnumerateNetworkPrinters), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, cAddNetPrinters), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, wProcessorArchitecture), sizeof(WORD), sizeof(WORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, wProcessorLevel), sizeof(WORD), sizeof(WORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, cRefIC), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, dwReserved2), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_STRESSA, dwReserved3), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
|
|
FieldInfo PrinterInfo1Fields[]={
|
|
{offsetof(PRINTER_INFO_1A, Flags), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_1A, pDescription), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_1A, pName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_1A, pComment), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
FieldInfo PrinterInfo2Fields[]={
|
|
{offsetof(PRINTER_INFO_2A, pServerName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, pPrinterName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, pShareName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, pPortName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, pDriverName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, pComment), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, pLocation), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, pDevMode), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, pSepFile), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, pPrintProcessor), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, pDatatype), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, pParameters), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, pSecurityDescriptor), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, Attributes), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, Priority), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, DefaultPriority), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, StartTime), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, UntilTime), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, Status), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, cJobs), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_2A, AveragePPM), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
FieldInfo PrinterInfo3Fields[]={
|
|
{offsetof(PRINTER_INFO_3, pSecurityDescriptor), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
FieldInfo PrinterInfo4Fields[]={
|
|
{offsetof(PRINTER_INFO_4A, pPrinterName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_4A, pServerName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_4A, Attributes), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
FieldInfo PrinterInfo5Fields[]={
|
|
{offsetof(PRINTER_INFO_5A, pPrinterName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_5A, pPortName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_5A, Attributes), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_5A, TransmissionRetryTimeout), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_INFO_5A, TransmissionRetryTimeout), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
FieldInfo PrinterInfo6Fields[]={
|
|
{offsetof(PRINTER_INFO_6, dwStatus), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
FieldInfo PrinterInfo7Fields[]={
|
|
{offsetof(PRINTER_INFO_7A, pszObjectGUID), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_INFO_7A, dwAction), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
FieldInfo PrinterInfo8Fields[]={
|
|
{offsetof(PRINTER_INFO_8A, pDevMode), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
FieldInfo PrinterInfo9Fields[]={
|
|
{offsetof(PRINTER_INFO_9A, pDevMode), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
#endif
|
|
|
|
|
|
#ifdef JOB_OFFSETS
|
|
|
|
FieldInfo JobInfo1Fields[]= {
|
|
{offsetof(JOB_INFO_1A, JobId), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_1A, pPrinterName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_1A, pMachineName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_1A, pUserName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_1A, pDocument), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_1A, pDatatype), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_1A, pStatus), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_1A, Status), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_1A, Priority), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_1A, Position), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_1A, TotalPages), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_1A, PagesPrinted), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_1A, Submitted), sizeof(SYSTEMTIME), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
|
|
FieldInfo JobInfo2Fields[]= {
|
|
{offsetof(JOB_INFO_2A, JobId), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_2A, pPrinterName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_2A, pMachineName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_2A, pUserName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_2A, pDocument), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_2A, pNotifyName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_2A, pDatatype), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_2A, pPrintProcessor), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_2A, pParameters), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_2A, pDriverName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_2A, pDevMode), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_2A, pStatus), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_2A, pSecurityDescriptor), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(JOB_INFO_2A, Status), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_2A, Priority), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_2A, Position), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_2A, StartTime), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_2A, UntilTime), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_2A, TotalPages), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_2A, Size), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_2A, Submitted), sizeof(SYSTEMTIME), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_2A, Time), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_2A, PagesPrinted), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
FieldInfo JobInfo3Fields[]= {
|
|
{offsetof(JOB_INFO_3, JobId), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_3, NextJobId), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(JOB_INFO_3, Reserved), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
#endif
|
|
|
|
|
|
#ifdef DRIVER_OFFSETS
|
|
|
|
FieldInfo DriverInfo1Fields[]= {
|
|
{offsetof(DRIVER_INFO_1A, pName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
|
|
FieldInfo DriverInfo2Fields[]= {
|
|
{offsetof(DRIVER_INFO_2A, cVersion), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(DRIVER_INFO_2A, pName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_2A, pEnvironment), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_2A, pDriverPath), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_2A, pDataFile), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_2A, pConfigFile), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
|
|
FieldInfo DriverInfo3Fields[]= {
|
|
{offsetof(DRIVER_INFO_3A, cVersion), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(DRIVER_INFO_3A, pName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_3A, pEnvironment), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_3A, pDriverPath), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_3A, pDataFile), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_3A, pConfigFile), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_3A, pHelpFile), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_3A, pDependentFiles), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_3A, pMonitorName), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_3A, pDefaultDataType), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
|
|
FieldInfo DriverInfo4Fields[]= {
|
|
{offsetof(DRIVER_INFO_4A, cVersion), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(DRIVER_INFO_4A, pName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_4A, pEnvironment), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_4A, pDriverPath), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_4A, pDataFile), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_4A, pConfigFile), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_4A, pHelpFile), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_4A, pDependentFiles), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_4A, pMonitorName), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_4A, pDefaultDataType), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_4A, pszzPreviousNames), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
|
|
FieldInfo DriverInfo5Fields[]= {
|
|
{offsetof(DRIVER_INFO_5A, cVersion), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(DRIVER_INFO_5A, pName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_5A, pEnvironment), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_5A, pDriverPath), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_5A, pDataFile), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_5A, pConfigFile), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_5A, dwDriverAttributes), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(DRIVER_INFO_5A, dwConfigVersion), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(DRIVER_INFO_5A, dwDriverVersion), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
FieldInfo DriverInfo6Fields[]= {
|
|
{offsetof(DRIVER_INFO_6A, cVersion), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, pName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, pEnvironment), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, pDriverPath), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, pDataFile), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, pConfigFile), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, pHelpFile), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, pDependentFiles), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, pMonitorName), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, pDefaultDataType), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, pszzPreviousNames), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, ftDriverDate), sizeof(FILETIME), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, dwlDriverVersion), sizeof(DWORDLONG), sizeof(DWORDLONG), DATA_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, pszMfgName), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, pszOEMUrl), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, pszHardwareID), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_6A, pszProvider), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
FieldInfo DriverInfoVersionFields[]= {
|
|
{offsetof(DRIVER_INFO_VERSION, cVersion), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(DRIVER_INFO_VERSION, pName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_VERSION, pEnvironment), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_VERSION, pFileInfo), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_VERSION, dwFileCount), sizeof(DWORD),sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(DRIVER_INFO_VERSION, pMonitorName), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_VERSION, pDefaultDataType), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_VERSION, pszzPreviousNames), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_VERSION, ftDriverDate), sizeof(FILETIME), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(DRIVER_INFO_VERSION, dwlDriverVersion), sizeof(DWORDLONG), sizeof(DWORDLONG), DATA_TYPE },
|
|
{offsetof(DRIVER_INFO_VERSION, pszMfgName), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_VERSION, pszOEMUrl), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_VERSION, pszHardwareID), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DRIVER_INFO_VERSION, pszProvider), sizeof(ULONG_PTR), sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
#endif
|
|
|
|
#ifdef ADDJOB_OFFSETS
|
|
FieldInfo AddJobFields[]= {
|
|
{offsetof(ADDJOB_INFO_1A, Path), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(ADDJOB_INFO_1A, JobId), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
FieldInfo AddJob2Fields[]= {
|
|
{offsetof(ADDJOB_INFO_2W, pData), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(ADDJOB_INFO_2W, JobId), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
#endif
|
|
|
|
|
|
#ifdef FORM_OFFSETS
|
|
FieldInfo FormInfo1Fields[]= {
|
|
{offsetof(FORM_INFO_1A, Flags), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(FORM_INFO_1A, pName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(FORM_INFO_1A, Size), sizeof(SIZEL), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(FORM_INFO_1A, ImageableArea), sizeof(RECTL), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
#endif
|
|
|
|
#ifdef PORT_OFFSETS
|
|
FieldInfo PortInfo1Fields[]= {
|
|
{offsetof(PORT_INFO_1A, pName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
FieldInfo PortInfo2Fields[]= {
|
|
{offsetof(PORT_INFO_2A, pPortName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PORT_INFO_2A, pMonitorName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PORT_INFO_2A, pDescription), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PORT_INFO_2A, fPortType), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PORT_INFO_2A, Reserved), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
FieldInfo PortInfo3Fields[]= {
|
|
{offsetof(PORT_INFO_3A, dwStatus), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PORT_INFO_3A, pszStatus), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PORT_INFO_3A, dwSeverity), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
#endif
|
|
|
|
|
|
#ifdef PRINTPROCESSOR_OFFSETS
|
|
FieldInfo PrintProcessorInfo1Fields[]= {
|
|
{offsetof(PRINTPROCESSOR_INFO_1A, pName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
#endif
|
|
|
|
|
|
#ifdef MONITOR_OFFSETS
|
|
FieldInfo MonitorInfo1Fields[]= {
|
|
{offsetof(MONITOR_INFO_2A, pName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
FieldInfo MonitorInfo2Fields[]= {
|
|
{offsetof(MONITOR_INFO_2A, pName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(MONITOR_INFO_2A, pEnvironment), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(MONITOR_INFO_2A, pDLLName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
#endif
|
|
|
|
|
|
#ifdef DOCINFO_OFFSETS
|
|
FieldInfo DocInfo1Fields[]= {
|
|
{offsetof(DOC_INFO_1A, pDocName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DOC_INFO_1A, pOutputFile), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(DOC_INFO_1A, pDatatype), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
#endif
|
|
|
|
|
|
#ifdef DATATYPE_OFFSETS
|
|
FieldInfo DatatypeInfo1Fields[]={
|
|
{offsetof(DATATYPES_INFO_1A, pName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
#endif
|
|
|
|
#ifdef PRINTER_ENUM_VALUES_OFFSETS
|
|
FieldInfo PrinterEnumValuesFields[]= {
|
|
{offsetof(PRINTER_ENUM_VALUESA, pValueName), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_ENUM_VALUESA, cbValueName), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_ENUM_VALUESA, dwType), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{offsetof(PRINTER_ENUM_VALUESA, pData), sizeof(ULONG_PTR),sizeof(DWORD), PTR_TYPE },
|
|
{offsetof(PRINTER_ENUM_VALUESA, cbData), sizeof(DWORD), sizeof(DWORD), DATA_TYPE },
|
|
{0xFFFFFFFF, 0, 0, DATA_TYPE}
|
|
};
|
|
|
|
#endif
|
|
|
|
|
|
#endif |