Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

111 lines
5.6 KiB

  1. /*++
  2. Copyright (c) 1995 Microsoft Corporation
  3. All rights reserved.
  4. Module Name:
  5. Data.c
  6. Abstract:
  7. Driver Setup data
  8. Author:
  9. Muhunthan Sivapragasam (MuhuntS) 28-Mar-1997
  10. Revision History:
  11. --*/
  12. #include "precomp.h"
  13. #define offsetof(type, identifier) (ULONG_PTR)(&(((type)0)->identifier))
  14. ULONG_PTR LocalDataOffsets[]={offsetof(PPSETUP_LOCAL_DATA, DrvInfo.pszInfName),
  15. offsetof(PPSETUP_LOCAL_DATA, DrvInfo.pszModelName),
  16. offsetof(PPSETUP_LOCAL_DATA, DrvInfo.pszDriverSection),
  17. offsetof(PPSETUP_LOCAL_DATA, DrvInfo.pszHardwareID),
  18. offsetof(PPSETUP_LOCAL_DATA, DrvInfo.pszManufacturer),
  19. offsetof(PPSETUP_LOCAL_DATA, DrvInfo.pszOEMUrl),
  20. offsetof(PPSETUP_LOCAL_DATA, DrvInfo.pszProvider),
  21. offsetof(PPSETUP_LOCAL_DATA, DrvInfo.pszzPreviousNames),
  22. (ULONG_PTR)-1};
  23. ULONG_PTR InfInfoOffsets[]={offsetof(PPARSEINF_INFO, pszInstallSection),
  24. offsetof(PPARSEINF_INFO, pszzICMFiles),
  25. offsetof(PPARSEINF_INFO, pszPrintProc),
  26. offsetof(PPARSEINF_INFO, pszVendorSetup),
  27. offsetof(PPARSEINF_INFO, pszVendorInstaller),
  28. offsetof(PPARSEINF_INFO, DriverInfo6.pName),
  29. offsetof(PPARSEINF_INFO, DriverInfo6.pDriverPath),
  30. offsetof(PPARSEINF_INFO, DriverInfo6.pConfigFile),
  31. offsetof(PPARSEINF_INFO, DriverInfo6.pDataFile),
  32. offsetof(PPARSEINF_INFO, DriverInfo6.pHelpFile),
  33. offsetof(PPARSEINF_INFO, DriverInfo6.pDependentFiles),
  34. offsetof(PPARSEINF_INFO, DriverInfo6.pMonitorName),
  35. offsetof(PPARSEINF_INFO, DriverInfo6.pDefaultDataType),
  36. (ULONG_PTR)-1};
  37. //
  38. // This array has the offsets of the elements that are shared in various structures
  39. //
  40. ULONG_PTR SharedInfInfoOffsets[] = {
  41. offsetof(PPARSEINF_INFO, DriverInfo6.pszzPreviousNames),
  42. offsetof(PPARSEINF_INFO, DriverInfo6.pszMfgName),
  43. offsetof(PPARSEINF_INFO, DriverInfo6.pszOEMUrl),
  44. offsetof(PPARSEINF_INFO, DriverInfo6.pszHardwareID),
  45. offsetof(PPARSEINF_INFO, DriverInfo6.pszProvider),
  46. (ULONG_PTR)-1};
  47. ULONG_PTR PnPInfoOffsets[]={offsetof(PPNP_INFO, pszPortName),
  48. offsetof(PPNP_INFO, pszDeviceInstanceId),
  49. (ULONG_PTR)-1};
  50. #if DBG
  51. //
  52. // The following are to catch any inconsistency in splsetup.h
  53. // Which can break the printui/ntprint interface
  54. //
  55. pfPSetupCreatePrinterDeviceInfoList _pfn1 = PSetupCreatePrinterDeviceInfoList;
  56. pfPSetupDestroyPrinterDeviceInfoList _pfn2 = PSetupDestroyPrinterDeviceInfoList;
  57. pfPSetupSelectDriver _pfn3 = PSetupSelectDriver;
  58. pfPSetupCreateDrvSetupPage _pfn4 = PSetupCreateDrvSetupPage;
  59. pfPSetupGetSelectedDriverInfo _pfn5 = PSetupGetSelectedDriverInfo;
  60. pfPSetupDestroySelectedDriverInfo _pfn6 = PSetupDestroySelectedDriverInfo;
  61. pfPSetupInstallPrinterDriver _pfn7 = PSetupInstallPrinterDriver;
  62. pfPSetupIsDriverInstalled _pfn8 = PSetupIsDriverInstalled;
  63. pfPSetupIsTheDriverFoundInInfInstalled _pfn9 = PSetupIsTheDriverFoundInInfInstalled;
  64. pfPSetupRefreshDriverList _pfn10 = PSetupRefreshDriverList;
  65. pfPSetupThisPlatform _pfn11 = PSetupThisPlatform;
  66. pfPSetupGetPathToSearch _pfn12 = PSetupGetPathToSearch;
  67. pfPSetupDriverInfoFromName _pfn13 = PSetupDriverInfoFromName;
  68. pfPSetupPreSelectDriver _pfn14 = PSetupPreSelectDriver;
  69. pfPSetupCreateMonitorInfo _pfn15 = PSetupCreateMonitorInfo;
  70. pfPSetupDestroyMonitorInfo _pfn16 = PSetupDestroyMonitorInfo;
  71. pfPSetupEnumMonitor _pfn17 = PSetupEnumMonitor;
  72. pfPSetupInstallMonitor _pfn18 = PSetupInstallMonitor;
  73. //
  74. // removed because unnecessary
  75. //
  76. // pfPSetupIsMonitorInstalled _pfn19 = PSetupIsMonitorInstalled;
  77. pfPSetupProcessPrinterAdded _pfn20 = PSetupProcessPrinterAdded;
  78. pfPSetupBuildDriversFromPath _pfn21 = PSetupBuildDriversFromPath;
  79. pfPSetupSetSelectDevTitleAndInstructions _pfn22 = PSetupSetSelectDevTitleAndInstructions;
  80. pfPSetupInstallPrinterDriverFromTheWeb _pfn23 = PSetupInstallPrinterDriverFromTheWeb;
  81. pfPSetupIsOemDriver _pfn24 = PSetupIsOemDriver;
  82. pfPSetupGetLocalDataField _pfn25 = PSetupGetLocalDataField;
  83. pfPSetupFreeDrvField _pfn26 = PSetupFreeDrvField;
  84. pfPSetupIsCompatibleDriver _pfn27 = PSetupIsCompatibleDriver;
  85. pfPSetupAssociateICMProfiles _pfn28 = PSetupAssociateICMProfiles;
  86. pfPSetupInstallICMProfiles _pfn29 = PSetupInstallICMProfiles;
  87. pfPSetupFreeMem _pfn30 = PSetupFreeMem;
  88. pfPSetupFindMappedDriver _pfn31 = PSetupFindMappedDriver;
  89. pfPSetupInstallInboxDriverSilently _pfn32 = PSetupInstallInboxDriverSilently;
  90. #endif