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.

290 lines
5.5 KiB

  1. /*++
  2. Copyright (C) Microsoft Corporation, 1996 - 1998
  3. All rights reserved.
  4. Module Name:
  5. psetup.hxx
  6. Abstract:
  7. Printer setup header.
  8. Author:
  9. Steve Kiraly (SteveKi) 19-Jan-1996
  10. Revision History:
  11. --*/
  12. #ifndef _PSETUP_HXX
  13. #define _PSETUP_HXX
  14. /********************************************************************
  15. Forward references.
  16. ********************************************************************/
  17. class TPSetup50;
  18. /********************************************************************
  19. Printer setup class.
  20. ********************************************************************/
  21. class TPSetup {
  22. SIGNATURE( 'setu' )
  23. public:
  24. TPSetup(
  25. VOID
  26. );
  27. ~TPSetup(
  28. VOID
  29. );
  30. BOOL
  31. bValid(
  32. VOID
  33. );
  34. HDEVINFO
  35. TPSetup::
  36. PSetupCreatePrinterDeviceInfoList(
  37. IN HWND hwnd
  38. );
  39. VOID
  40. TPSetup::
  41. PSetupDestroyPrinterDeviceInfoList(
  42. IN HDEVINFO h
  43. );
  44. BOOL
  45. TPSetup::
  46. PSetupProcessPrinterAdded(
  47. IN HDEVINFO hDevInfo,
  48. IN HANDLE hLocalData,
  49. IN LPCTSTR pszPrinterName,
  50. IN HWND hwnd
  51. );
  52. DWORD
  53. TPSetup::
  54. PSetupInstallPrinterDriver(
  55. IN HDEVINFO h,
  56. IN HANDLE hLocalData,
  57. IN LPCTSTR pszDriverName,
  58. IN PLATFORM platform,
  59. IN DWORD dwVersion,
  60. IN LPCTSTR pszServerName,
  61. IN HWND hwnd,
  62. IN LPCTSTR pszPlatformName,
  63. IN LPCTSTR pszSourcePath,
  64. IN DWORD dwInstallFlags,
  65. IN DWORD dwAddDrvFlags,
  66. OUT TString *pstrNewDriverName,
  67. IN BOOL bOfferReplacement
  68. );
  69. BOOL
  70. TPSetup::
  71. PSetupIsDriverInstalled(
  72. IN LPCTSTR pszServerName,
  73. IN LPCTSTR pszDriverName,
  74. IN PLATFORM platform,
  75. IN DWORD dwMajorVersion
  76. ) const;
  77. INT
  78. TPSetup::
  79. PSetupIsTheDriverFoundInInfInstalled(
  80. IN LPCTSTR pszServerName,
  81. IN HANDLE hLocalData,
  82. IN PLATFORM platform,
  83. IN DWORD dwMajorVersion,
  84. IN DWORD dwMajorVersion2
  85. ) const;
  86. BOOL
  87. TPSetup::
  88. PSetupSelectDriver(
  89. IN HDEVINFO h,
  90. IN HWND hwnd
  91. );
  92. BOOL
  93. TPSetup::
  94. PSetupRefreshDriverList(
  95. IN HDEVINFO h
  96. );
  97. HANDLE
  98. TPSetup::
  99. PSetupDriverInfoFromName(
  100. IN HDEVINFO h,
  101. IN LPCTSTR pszModel
  102. );
  103. BOOL
  104. TPSetup::
  105. PSetupPreSelectDriver(
  106. IN HDEVINFO h,
  107. IN LPCTSTR pszManufacturer,
  108. IN LPCTSTR pszModel
  109. );
  110. HANDLE
  111. TPSetup::
  112. PSetupGetSelectedDriverInfo(
  113. IN HDEVINFO h
  114. );
  115. VOID
  116. TPSetup::
  117. PSetupDestroySelectedDriverInfo(
  118. IN HANDLE hLocalData
  119. );
  120. HPROPSHEETPAGE
  121. TPSetup::
  122. PSetupCreateDrvSetupPage(
  123. IN HDEVINFO h,
  124. IN HWND hwnd
  125. );
  126. BOOL
  127. TPSetup::
  128. bGetSelectedDriverName(
  129. IN HANDLE hLocalData,
  130. IN OUT TString &strDriverName,
  131. IN PLATFORM platform
  132. ) const;
  133. BOOL
  134. TPSetup::
  135. bGetSelectedPrintProcessorName(
  136. IN HANDLE hLocalData,
  137. IN OUT TString &strPrintProcessor,
  138. IN PLATFORM platform
  139. ) const;
  140. BOOL
  141. TPSetup::
  142. bGetSelectedInfName(
  143. IN HANDLE hLocalData,
  144. IN OUT TString &strPrintProcessor,
  145. IN PLATFORM platform
  146. ) const;
  147. HANDLE
  148. TPSetup::
  149. PSetupCreateMonitorInfo(
  150. IN LPCTSTR pszServerName,
  151. IN HWND hwnd
  152. );
  153. VOID
  154. TPSetup::
  155. PSetupDestroyMonitorInfo(
  156. IN OUT HANDLE h
  157. );
  158. BOOL
  159. TPSetup::
  160. PSetupEnumMonitor(
  161. IN HANDLE h,
  162. IN DWORD dwIndex,
  163. OUT LPTSTR pMonitorName,
  164. IN OUT LPDWORD pdwSize
  165. );
  166. BOOL
  167. TPSetup::
  168. PSetupInstallMonitor(
  169. IN HWND hwnd
  170. );
  171. BOOL
  172. TPSetup::
  173. PSetupBuildDriversFromPath(
  174. IN HANDLE h,
  175. IN LPCTSTR pszDriverPath,
  176. IN BOOL bEnumSingleInf
  177. );
  178. BOOL
  179. TPSetup::
  180. PSetupSetSelectDevTitleAndInstructions(
  181. IN HDEVINFO hDevInfo,
  182. IN LPCTSTR pszTitle,
  183. IN LPCTSTR pszSubTitle,
  184. IN LPCTSTR pszInstn
  185. );
  186. DWORD
  187. TPSetup::
  188. PSetupInstallPrinterDriverFromTheWeb(
  189. IN HDEVINFO hDevInfo,
  190. IN HANDLE pLocalData,
  191. IN PLATFORM platform,
  192. IN LPCTSTR pszServerName,
  193. IN LPOSVERSIONINFO pOsVersionInfo,
  194. IN HWND hwnd,
  195. IN LPCTSTR pszSource
  196. );
  197. BOOL
  198. TPSetup::
  199. PSetupIsOemDriver(
  200. IN HDEVINFO hDevInfo,
  201. IN HANDLE pLocalData,
  202. IN OUT PBOOL pbIsOemDriver
  203. ) const;
  204. BOOL
  205. TPSetup::
  206. PSetupSetWebMode(
  207. IN HDEVINFO hDevInfo,
  208. IN BOOL bWebButtonOn
  209. );
  210. BOOL
  211. TPSetup::
  212. PSetupShowOem(
  213. IN HDEVINFO hDevInfo,
  214. IN BOOL bShowOem
  215. );
  216. private:
  217. //
  218. // Prevent copying.
  219. //
  220. TPSetup(
  221. const TPSetup &rhs
  222. );
  223. //
  224. // Prevent assignment.
  225. //
  226. TPSetup &
  227. operator =(
  228. const TPSetup &rhs
  229. );
  230. TPSetup50 *_pPSetup50;
  231. BOOL _bValid;
  232. };
  233. #endif