Leaked source code of windows server 2003
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.

1005 lines
32 KiB

  1. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3. /* File created by MIDL compiler version 5.03.0286 */
  4. /* Compiler settings for winspl.idl:
  5. Oicf (OptLev=i2), W1, Zp8, env=Win32 (32b run), ms_ext, c_ext, oldnames, robust
  6. error checks: allocation ref bounds_check enum stub_data , no_format_optimization
  7. VC __declspec() decoration level:
  8. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  9. DECLSPEC_UUID(), MIDL_INTERFACE()
  10. */
  11. //@@MIDL_FILE_HEADING( )
  12. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  13. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  14. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  15. #endif
  16. #include "rpc.h"
  17. #include "rpcndr.h"
  18. #ifndef __RPCNDR_H_VERSION__
  19. #error this stub requires an updated version of <rpcndr.h>
  20. #endif // __RPCNDR_H_VERSION__
  21. #ifndef __winspl_h__
  22. #define __winspl_h__
  23. /* Forward Declarations */
  24. /* header files for imported files */
  25. #include "import.h"
  26. #ifdef __cplusplus
  27. extern "C"{
  28. #endif
  29. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  30. void __RPC_USER MIDL_user_free( void __RPC_FAR * );
  31. #ifndef __winspool_INTERFACE_DEFINED__
  32. #define __winspool_INTERFACE_DEFINED__
  33. /* interface winspool */
  34. /* [implicit_handle][unique][endpoint][ms_union][version][uuid] */
  35. typedef WORD TABLE;
  36. typedef struct _NOTIFY_ATTRIB_TABLE
  37. {
  38. WORD Attrib;
  39. TABLE Table;
  40. } NOTIFY_ATTRIB_TABLE;
  41. typedef struct _NOTIFY_ATTRIB_TABLE __RPC_FAR *PNOTIFY_ATTRIB_TABLE;
  42. typedef /* [context_handle] */ void __RPC_FAR *PRINTER_HANDLE;
  43. typedef /* [context_handle] */ void __RPC_FAR *GDI_HANDLE;
  44. typedef /* [handle] */ wchar_t __RPC_FAR *STRING_HANDLE;
  45. typedef /* [string] */ wchar_t __RPC_FAR *SPL_STRING;
  46. typedef struct _PORT_VAR_CONTAINER
  47. {
  48. DWORD cbMonitorData;
  49. /* [unique][size_is] */ LPBYTE pMonitorData;
  50. } PORT_VAR_CONTAINER;
  51. typedef struct _PORT_VAR_CONTAINER __RPC_FAR *PPORT_VAR_CONTAINER;
  52. typedef struct _PORT_VAR_CONTAINER __RPC_FAR *LPPORT_VAR_CONTAINER;
  53. typedef struct _PORT_CONTAINER
  54. {
  55. DWORD Level;
  56. /* [switch_is] */ /* [switch_type] */ union
  57. {
  58. /* [case()] */ LPPORT_INFO_1W pPortInfo1;
  59. /* [case()] */ LPPORT_INFO_2W pPortInfo2;
  60. /* [case()] */ LPPORT_INFO_3W pPortInfo3;
  61. /* [case()] */ LPPORT_INFO_FFW pPortInfoFF;
  62. } PortInfo;
  63. } PORT_CONTAINER;
  64. typedef struct _PORT_CONTAINER __RPC_FAR *PPORT_CONTAINER;
  65. typedef struct _PORT_CONTAINER __RPC_FAR *LPPORT_CONTAINER;
  66. typedef struct _DEVMODE_CONTAINER
  67. {
  68. DWORD cbBuf;
  69. /* [unique][size_is] */ LPBYTE pDevMode;
  70. } DEVMODE_CONTAINER;
  71. typedef struct _DEVMODE_CONTAINER __RPC_FAR *PDEVMODE_CONTAINER;
  72. typedef struct _DEVMODE_CONTAINER __RPC_FAR *LPDEVMODE_CONTAINER;
  73. typedef struct _SECURITY_CONTAINER
  74. {
  75. DWORD cbBuf;
  76. /* [unique][size_is] */ LPBYTE pSecurity;
  77. } SECURITY_CONTAINER;
  78. typedef struct _SECURITY_CONTAINER __RPC_FAR *PSECURITY_CONTAINER;
  79. typedef struct _SECURITY_CONTAINER __RPC_FAR *LPSECURITY_CONTAINER;
  80. typedef struct _PRINTER_CONTAINER
  81. {
  82. DWORD Level;
  83. /* [switch_is] */ /* [switch_type] */ union
  84. {
  85. /* [case()] */ LPPRINTER_INFO_STRESSW pPrinterInfoStress;
  86. /* [case()] */ LPPRINTER_INFO_1W pPrinterInfo1;
  87. /* [case()] */ LPPRINTER_INFO_2W pPrinterInfo2;
  88. /* [case()] */ LPPRINTER_INFO_3 pPrinterInfo3;
  89. /* [case()] */ LPPRINTER_INFO_4W pPrinterInfo0;
  90. /* [case()] */ LPPRINTER_INFO_5W pPrinterInfo5;
  91. /* [case()] */ LPPRINTER_INFO_6 pPrinterInfo6;
  92. /* [case()] */ LPPRINTER_INFO_7W pPrinterInfo7;
  93. /* [case()] */ LPPRINTER_INFO_8W pPrinterInfo8;
  94. /* [case()] */ LPPRINTER_INFO_9W pPrinterInfo9;
  95. } PrinterInfo;
  96. } PRINTER_CONTAINER;
  97. typedef struct _PRINTER_CONTAINER __RPC_FAR *PPRINTER_CONTAINER;
  98. typedef struct _PRINTER_CONTAINER __RPC_FAR *LPPRINTER_CONTAINER;
  99. typedef struct _JOB_CONTAINER
  100. {
  101. DWORD Level;
  102. /* [switch_is] */ /* [switch_type] */ union
  103. {
  104. /* [case()] */ JOB_INFO_1W __RPC_FAR *Level1;
  105. /* [case()] */ JOB_INFO_2W __RPC_FAR *Level2;
  106. /* [case()] */ JOB_INFO_3 __RPC_FAR *Level3;
  107. } JobInfo;
  108. } JOB_CONTAINER;
  109. typedef struct _JOB_CONTAINER __RPC_FAR *PJOB_CONTAINER;
  110. typedef struct _JOB_CONTAINER __RPC_FAR *LPJOB_CONTAINER;
  111. typedef struct _RPC_DRIVER_INFO_3W
  112. {
  113. DWORD cVersion;
  114. SPL_STRING pName;
  115. SPL_STRING pEnvironment;
  116. SPL_STRING pDriverPath;
  117. SPL_STRING pDataFile;
  118. SPL_STRING pConfigFile;
  119. SPL_STRING pHelpFile;
  120. SPL_STRING pMonitorName;
  121. SPL_STRING pDefaultDataType;
  122. DWORD cchDependentFiles;
  123. /* [unique][size_is] */ WCHAR __RPC_FAR *pDependentFiles;
  124. } RPC_DRIVER_INFO_3W;
  125. typedef struct _RPC_DRIVER_INFO_3W __RPC_FAR *PRPC_DRIVER_INFO_3W;
  126. typedef struct _RPC_DRIVER_INFO_3W __RPC_FAR *LPRPC_DRIVER_INFO_3W;
  127. typedef struct _RPC_DRIVER_INFO_4W
  128. {
  129. DWORD cVersion;
  130. SPL_STRING pName;
  131. SPL_STRING pEnvironment;
  132. SPL_STRING pDriverPath;
  133. SPL_STRING pDataFile;
  134. SPL_STRING pConfigFile;
  135. SPL_STRING pHelpFile;
  136. SPL_STRING pMonitorName;
  137. SPL_STRING pDefaultDataType;
  138. DWORD cchDependentFiles;
  139. /* [unique][size_is] */ WCHAR __RPC_FAR *pDependentFiles;
  140. DWORD cchPreviousNames;
  141. /* [unique][size_is] */ WCHAR __RPC_FAR *pszzPreviousNames;
  142. } RPC_DRIVER_INFO_4W;
  143. typedef struct _RPC_DRIVER_INFO_4W __RPC_FAR *PRPC_DRIVER_INFO_4W;
  144. typedef struct _RPC_DRIVER_INFO_4W __RPC_FAR *LPRPC_DRIVER_INFO_4W;
  145. typedef struct _RPC_DRIVER_INFO_6W
  146. {
  147. DWORD cVersion;
  148. SPL_STRING pName;
  149. SPL_STRING pEnvironment;
  150. SPL_STRING pDriverPath;
  151. SPL_STRING pDataFile;
  152. SPL_STRING pConfigFile;
  153. SPL_STRING pHelpFile;
  154. SPL_STRING pMonitorName;
  155. SPL_STRING pDefaultDataType;
  156. DWORD cchDependentFiles;
  157. /* [unique][size_is] */ WCHAR __RPC_FAR *pDependentFiles;
  158. DWORD cchPreviousNames;
  159. /* [unique][size_is] */ WCHAR __RPC_FAR *pszzPreviousNames;
  160. FILETIME ftDriverDate;
  161. DWORDLONG dwlDriverVersion;
  162. SPL_STRING pMfgName;
  163. SPL_STRING pOEMUrl;
  164. SPL_STRING pHardwareID;
  165. SPL_STRING pProvider;
  166. } RPC_DRIVER_INFO_6W;
  167. typedef struct _RPC_DRIVER_INFO_6W __RPC_FAR *PRPC_DRIVER_INFO_6W;
  168. typedef struct _RPC_DRIVER_INFO_6W __RPC_FAR *LPRPC_DRIVER_INFO_6W;
  169. typedef struct _DRIVER_CONTAINER
  170. {
  171. DWORD Level;
  172. /* [switch_is] */ /* [switch_type] */ union
  173. {
  174. /* [case()] */ LPDRIVER_INFO_1W Level1;
  175. /* [case()] */ LPDRIVER_INFO_2W Level2;
  176. /* [case()] */ LPRPC_DRIVER_INFO_3W Level3;
  177. /* [case()] */ LPRPC_DRIVER_INFO_4W Level4;
  178. /* [case()] */ LPRPC_DRIVER_INFO_6W Level6;
  179. } DriverInfo;
  180. } DRIVER_CONTAINER;
  181. typedef struct _DRIVER_CONTAINER __RPC_FAR *PDRIVER_CONTAINER;
  182. typedef struct _DRIVER_CONTAINER __RPC_FAR *LPDRIVER_CONTAINER;
  183. typedef struct _DOC_INFO_CONTAINER
  184. {
  185. DWORD Level;
  186. /* [switch_is] */ /* [switch_type] */ union
  187. {
  188. /* [case()] */ LPDOC_INFO_1W pDocInfo1;
  189. } DocInfo;
  190. } DOC_INFO_CONTAINER;
  191. typedef struct _DOC_INFO_CONTAINER __RPC_FAR *PDOC_INFO_CONTAINER;
  192. typedef struct _DOC_INFO_CONTAINER __RPC_FAR *LPDOC_INFO_CONTAINER;
  193. typedef struct _FORM_CONTAINER
  194. {
  195. DWORD Level;
  196. /* [switch_is] */ /* [switch_type] */ union
  197. {
  198. /* [case()] */ LPFORM_INFO_1W pFormInfo1;
  199. } FormInfo;
  200. } FORM_CONTAINER;
  201. typedef struct _FORM_CONTAINER __RPC_FAR *PFORM_CONTAINER;
  202. typedef struct _FORM_CONTAINER __RPC_FAR *LPFORM_CONTAINER;
  203. typedef struct _MONITOR_CONTAINER
  204. {
  205. DWORD Level;
  206. /* [switch_is] */ /* [switch_type] */ union
  207. {
  208. /* [case()] */ LPMONITOR_INFO_1W pMonitorInfo1;
  209. /* [case()] */ LPMONITOR_INFO_2W pMonitorInfo2;
  210. } MonitorInfo;
  211. } MONITOR_CONTAINER;
  212. typedef struct _MONITOR_CONTAINER __RPC_FAR *PMONITOR_CONTAINER;
  213. typedef struct _MONITOR_CONTAINER __RPC_FAR *LPMONITOR_CONTAINER;
  214. typedef struct _RPC_PROVIDOR_INFO_2W
  215. {
  216. DWORD cchOrder;
  217. /* [unique][size_is] */ WCHAR __RPC_FAR *pOrder;
  218. } RPC_PROVIDOR_INFO_2W;
  219. typedef struct _RPC_PROVIDOR_INFO_2W __RPC_FAR *PRPC_PROVIDOR_INFO_2W;
  220. typedef struct _RPC_PROVIDOR_INFO_2W __RPC_FAR *LPRPC_PROVIDOR_INFO_2W;
  221. typedef struct _PROVIDOR_CONTAINER
  222. {
  223. DWORD Level;
  224. /* [switch_is] */ /* [switch_type] */ union
  225. {
  226. /* [case()] */ LPPROVIDOR_INFO_1W pProvidorInfo1;
  227. /* [case()] */ LPRPC_PROVIDOR_INFO_2W pRpcProvidorInfo2;
  228. } ProvidorInfo;
  229. } PROVIDOR_CONTAINER;
  230. typedef struct _PROVIDOR_CONTAINER __RPC_FAR *PPROVIDOR_CONTAINER;
  231. typedef struct _PROVIDOR_CONTAINER __RPC_FAR *LPPROVIDOR_CONTAINER;
  232. typedef struct _SPLCLIENT_CONTAINER
  233. {
  234. DWORD Level;
  235. /* [switch_is] */ /* [switch_type] */ union
  236. {
  237. /* [case()] */ LPSPLCLIENT_INFO_1 pClientInfo1;
  238. /* [case()] */ LPSPLCLIENT_INFO_2 pClientInfo2;
  239. } ClientInfo;
  240. } SPLCLIENT_CONTAINER;
  241. typedef struct _SPLCLIENT_CONTAINER __RPC_FAR *PSPLCLIENT_CONTAINER;
  242. typedef struct _SPLCLIENT_CONTAINER __RPC_FAR *LPSPLCLIENT_CONTAINER;
  243. typedef struct _STRING_CONTAINER
  244. {
  245. DWORD cbBuf;
  246. /* [unique][size_is] */ LPWSTR pszString;
  247. } STRING_CONTAINER;
  248. typedef struct _STRING_CONTAINER __RPC_FAR *PSTRING_CONTAINER;
  249. typedef struct _SYSTEMTIME_CONTAINER
  250. {
  251. DWORD cbBuf;
  252. PSYSTEMTIME pSystemTime;
  253. } SYSTEMTIME_CONTAINER;
  254. typedef struct _SYSTEMTIME_CONTAINER __RPC_FAR *PSYSTEMTIME_CONTAINER;
  255. typedef struct _RPC_V2_NOTIFY_OPTIONS_TYPE
  256. {
  257. WORD Type;
  258. WORD Reserved0;
  259. DWORD Reserved1;
  260. DWORD Reserved2;
  261. DWORD Count;
  262. /* [unique][size_is] */ PWORD pFields;
  263. } RPC_V2_NOTIFY_OPTIONS_TYPE;
  264. typedef struct _RPC_V2_NOTIFY_OPTIONS_TYPE __RPC_FAR *PRPC_V2_NOTIFY_OPTIONS_TYPE;
  265. typedef struct _RPC_V2_NOTIFY_OPTIONS
  266. {
  267. DWORD Version;
  268. DWORD Reserved;
  269. DWORD Count;
  270. /* [unique][size_is] */ PRPC_V2_NOTIFY_OPTIONS_TYPE pTypes;
  271. } RPC_V2_NOTIFY_OPTIONS;
  272. typedef struct _RPC_V2_NOTIFY_OPTIONS __RPC_FAR *PRPC_V2_NOTIFY_OPTIONS;
  273. typedef /* [switch_type] */ union _RPC_V2_NOTIFY_INFO_DATA_DATA
  274. {
  275. /* [case()] */ STRING_CONTAINER String;
  276. /* [case()] */ DWORD dwData[ 2 ];
  277. /* [case()] */ SYSTEMTIME_CONTAINER SystemTime;
  278. /* [case()] */ DEVMODE_CONTAINER DevMode;
  279. /* [case()] */ SECURITY_CONTAINER SecurityDescriptor;
  280. } RPC_V2_NOTIFY_INFO_DATA_DATA;
  281. typedef /* [switch_type] */ union _RPC_V2_NOTIFY_INFO_DATA_DATA __RPC_FAR *PRPC_V2_NOTIFY_INFO_DATA_DATA;
  282. typedef struct _RPC_V2_NOTIFY_INFO_DATA
  283. {
  284. WORD Type;
  285. WORD Field;
  286. DWORD Reserved;
  287. DWORD Id;
  288. /* [switch_is] */ RPC_V2_NOTIFY_INFO_DATA_DATA Data;
  289. } RPC_V2_NOTIFY_INFO_DATA;
  290. typedef struct _RPC_V2_NOTIFY_INFO_DATA __RPC_FAR *PRPC_V2_NOTIFY_INFO_DATA;
  291. typedef struct _RPC_V2_NOTIFY_INFO
  292. {
  293. DWORD Version;
  294. DWORD Flags;
  295. DWORD Count;
  296. /* [unique][size_is] */ RPC_V2_NOTIFY_INFO_DATA aData[ 1 ];
  297. } RPC_V2_NOTIFY_INFO;
  298. typedef struct _RPC_V2_NOTIFY_INFO __RPC_FAR *PRPC_V2_NOTIFY_INFO;
  299. typedef /* [switch_type] */ union _RPC_V2_UREPLY_PRINTER
  300. {
  301. /* [case()] */ PRPC_V2_NOTIFY_INFO pInfo;
  302. } RPC_V2_UREPLY_PRINTER;
  303. typedef /* [switch_type] */ union _RPC_V2_UREPLY_PRINTER __RPC_FAR *PRPC_V2_UREPLY_PRINTER;
  304. DWORD RpcEnumPrinters(
  305. /* [in] */ DWORD Flags,
  306. /* [unique][string][in] */ STRING_HANDLE Name,
  307. /* [in] */ DWORD Level,
  308. /* [size_is][unique][out][in] */ LPBYTE pPrinterEnum,
  309. /* [in] */ DWORD cbBuf,
  310. /* [out] */ LPDWORD pcbNeeded,
  311. /* [out] */ LPDWORD pcReturned);
  312. DWORD RpcOpenPrinter(
  313. /* [unique][string][in] */ STRING_HANDLE pPrinterName,
  314. /* [out] */ PRINTER_HANDLE __RPC_FAR *pHandle,
  315. /* [unique][string][in] */ wchar_t __RPC_FAR *pDatatype,
  316. /* [in] */ LPDEVMODE_CONTAINER pDevMode,
  317. /* [in] */ DWORD AccessRequired);
  318. DWORD RpcSetJob(
  319. /* [in] */ PRINTER_HANDLE hPrinter,
  320. /* [in] */ DWORD JobId,
  321. /* [unique][in] */ LPJOB_CONTAINER pJobContainer,
  322. /* [in] */ DWORD Command);
  323. DWORD RpcGetJob(
  324. /* [in] */ PRINTER_HANDLE hPrinter,
  325. /* [in] */ DWORD JobId,
  326. /* [in] */ DWORD Level,
  327. /* [size_is][unique][out][in] */ LPBYTE pJob,
  328. /* [in] */ DWORD cbBuf,
  329. /* [out] */ LPDWORD pcbNeeded);
  330. DWORD RpcEnumJobs(
  331. /* [in] */ PRINTER_HANDLE hPrinter,
  332. /* [in] */ DWORD FirstJob,
  333. /* [in] */ DWORD NoJobs,
  334. /* [in] */ DWORD Level,
  335. /* [size_is][unique][out][in] */ LPBYTE pJob,
  336. /* [in] */ DWORD cbBuf,
  337. /* [out] */ LPDWORD pcbNeeded,
  338. /* [out] */ LPDWORD pcReturned);
  339. DWORD RpcAddPrinter(
  340. /* [unique][string][in] */ STRING_HANDLE pName,
  341. /* [in] */ PPRINTER_CONTAINER pPrinterContainer,
  342. /* [in] */ PDEVMODE_CONTAINER pDevModeContainer,
  343. /* [in] */ PSECURITY_CONTAINER pSecurityContainer,
  344. /* [out] */ PRINTER_HANDLE __RPC_FAR *pHandle);
  345. DWORD RpcDeletePrinter(
  346. /* [in] */ PRINTER_HANDLE hPrinter);
  347. DWORD RpcSetPrinter(
  348. /* [in] */ PRINTER_HANDLE hPrinter,
  349. /* [in] */ PPRINTER_CONTAINER pPrinterContainer,
  350. /* [in] */ PDEVMODE_CONTAINER pDevModeContainer,
  351. /* [in] */ PSECURITY_CONTAINER pSecurityContainer,
  352. /* [in] */ DWORD Command);
  353. DWORD RpcGetPrinter(
  354. /* [in] */ PRINTER_HANDLE hPrinter,
  355. /* [in] */ DWORD Level,
  356. /* [size_is][unique][out][in] */ LPBYTE pPrinter,
  357. /* [in] */ DWORD cbBuf,
  358. /* [out] */ LPDWORD pcbNeeded);
  359. DWORD RpcAddPrinterDriver(
  360. /* [unique][string][in] */ STRING_HANDLE pName,
  361. /* [in] */ PDRIVER_CONTAINER pDriverContainer);
  362. DWORD RpcEnumPrinterDrivers(
  363. /* [unique][string][in] */ STRING_HANDLE pName,
  364. /* [string][unique][in] */ wchar_t __RPC_FAR *pEnvironment,
  365. /* [in] */ DWORD Level,
  366. /* [size_is][unique][out][in] */ LPBYTE pDrivers,
  367. /* [in] */ DWORD cbBuf,
  368. /* [out] */ LPDWORD pcbNeeded,
  369. /* [out] */ LPDWORD pcReturned);
  370. DWORD RpcGetPrinterDriver(
  371. /* [in] */ PRINTER_HANDLE hPrinter,
  372. /* [string][unique][in] */ wchar_t __RPC_FAR *pEnvironment,
  373. /* [in] */ DWORD Level,
  374. /* [size_is][unique][out][in] */ LPBYTE pDriver,
  375. /* [in] */ DWORD cbBuf,
  376. /* [out] */ LPDWORD pcbNeeded);
  377. DWORD RpcGetPrinterDriverDirectory(
  378. /* [unique][string][in] */ STRING_HANDLE pName,
  379. /* [string][unique][in] */ wchar_t __RPC_FAR *pEnvironment,
  380. /* [in] */ DWORD Level,
  381. /* [size_is][unique][out][in] */ LPBYTE pDriverDirectory,
  382. /* [in] */ DWORD cbBuf,
  383. /* [out] */ LPDWORD pcbNeeded);
  384. DWORD RpcDeletePrinterDriver(
  385. /* [unique][string][in] */ STRING_HANDLE pName,
  386. /* [string][in] */ wchar_t __RPC_FAR *pEnvironment,
  387. /* [string][in] */ wchar_t __RPC_FAR *pDriverName);
  388. DWORD RpcAddPrintProcessor(
  389. /* [unique][string][in] */ STRING_HANDLE pName,
  390. /* [string][in] */ wchar_t __RPC_FAR *pEnvironment,
  391. /* [string][in] */ wchar_t __RPC_FAR *pPathName,
  392. /* [string][in] */ wchar_t __RPC_FAR *pPrintProcessorName);
  393. DWORD RpcEnumPrintProcessors(
  394. /* [unique][string][in] */ STRING_HANDLE pName,
  395. /* [string][unique][in] */ wchar_t __RPC_FAR *pEnvironment,
  396. /* [in] */ DWORD Level,
  397. /* [size_is][unique][out][in] */ LPBYTE pPrintProcessorInfo,
  398. /* [in] */ DWORD cbBuf,
  399. /* [out] */ LPDWORD pcbNeeded,
  400. /* [out] */ LPDWORD pcReturned);
  401. DWORD RpcGetPrintProcessorDirectory(
  402. /* [unique][string][in] */ STRING_HANDLE pName,
  403. /* [string][unique][in] */ wchar_t __RPC_FAR *pEnvironment,
  404. /* [in] */ DWORD Level,
  405. /* [size_is][unique][out][in] */ LPBYTE pPrintProcessorDirectory,
  406. /* [in] */ DWORD cbBuf,
  407. /* [out] */ LPDWORD pcbNeeded);
  408. DWORD RpcStartDocPrinter(
  409. /* [in] */ PRINTER_HANDLE hPrinter,
  410. /* [in] */ PDOC_INFO_CONTAINER pDocInfoContainer,
  411. /* [out] */ LPDWORD pJobId);
  412. DWORD RpcStartPagePrinter(
  413. /* [in] */ PRINTER_HANDLE hPrinter);
  414. DWORD RpcWritePrinter(
  415. /* [in] */ PRINTER_HANDLE hPrinter,
  416. /* [size_is][in] */ LPBYTE pBuf,
  417. /* [in] */ DWORD cbBuf,
  418. /* [out] */ LPDWORD pcWritten);
  419. DWORD RpcEndPagePrinter(
  420. /* [in] */ PRINTER_HANDLE hPrinter);
  421. DWORD RpcAbortPrinter(
  422. /* [in] */ PRINTER_HANDLE hPrinter);
  423. DWORD RpcReadPrinter(
  424. /* [in] */ PRINTER_HANDLE hPrinter,
  425. /* [size_is][out] */ LPBYTE pBuf,
  426. /* [in] */ DWORD cbBuf,
  427. /* [out] */ LPDWORD pcNoBytesRead);
  428. DWORD RpcEndDocPrinter(
  429. /* [in] */ PRINTER_HANDLE hPrinter);
  430. DWORD RpcAddJob(
  431. /* [in] */ PRINTER_HANDLE hPrinter,
  432. /* [in] */ DWORD Level,
  433. /* [size_is][unique][out][in] */ LPBYTE pAddJob,
  434. /* [in] */ DWORD cbBuf,
  435. /* [out] */ LPDWORD pcbNeeded);
  436. DWORD RpcScheduleJob(
  437. /* [in] */ PRINTER_HANDLE hPrinter,
  438. /* [in] */ DWORD JobId);
  439. DWORD RpcGetPrinterData(
  440. /* [in] */ PRINTER_HANDLE hPrinter,
  441. /* [string][in] */ wchar_t __RPC_FAR *pValueName,
  442. /* [out] */ LPDWORD pType,
  443. /* [size_is][out] */ LPBYTE pData,
  444. /* [in] */ DWORD nSize,
  445. /* [out] */ LPDWORD pcbNeeded);
  446. DWORD RpcSetPrinterData(
  447. /* [in] */ PRINTER_HANDLE hPrinter,
  448. /* [string][in] */ wchar_t __RPC_FAR *pValueName,
  449. /* [in] */ DWORD Type,
  450. /* [size_is][in] */ LPBYTE pData,
  451. /* [in] */ DWORD cbData);
  452. DWORD RpcWaitForPrinterChange(
  453. /* [in] */ PRINTER_HANDLE hPrinter,
  454. /* [in] */ DWORD Flags,
  455. /* [out] */ LPDWORD pFlags);
  456. DWORD RpcClosePrinter(
  457. /* [out][in] */ PRINTER_HANDLE __RPC_FAR *phPrinter);
  458. DWORD RpcAddForm(
  459. /* [in] */ PRINTER_HANDLE hPrinter,
  460. /* [in] */ PFORM_CONTAINER pFormInfoContainer);
  461. DWORD RpcDeleteForm(
  462. /* [in] */ PRINTER_HANDLE hPrinter,
  463. /* [string][in] */ wchar_t __RPC_FAR *pFormName);
  464. DWORD RpcGetForm(
  465. /* [in] */ PRINTER_HANDLE hPrinter,
  466. /* [string][in] */ wchar_t __RPC_FAR *pFormName,
  467. /* [in] */ DWORD Level,
  468. /* [size_is][unique][out][in] */ LPBYTE pForm,
  469. /* [in] */ DWORD cbBuf,
  470. /* [out] */ LPDWORD pcbNeeded);
  471. DWORD RpcSetForm(
  472. /* [in] */ PRINTER_HANDLE hPrinter,
  473. /* [string][in] */ wchar_t __RPC_FAR *pFormName,
  474. /* [in] */ PFORM_CONTAINER pFormInfoContainer);
  475. DWORD RpcEnumForms(
  476. /* [in] */ PRINTER_HANDLE hPrinter,
  477. /* [in] */ DWORD Level,
  478. /* [size_is][unique][out][in] */ LPBYTE pForm,
  479. /* [in] */ DWORD cbBuf,
  480. /* [out] */ LPDWORD pcbNeeded,
  481. /* [out] */ LPDWORD pcReturned);
  482. DWORD RpcEnumPorts(
  483. /* [unique][string][in] */ STRING_HANDLE pName,
  484. /* [in] */ DWORD Level,
  485. /* [size_is][unique][out][in] */ LPBYTE pPort,
  486. /* [in] */ DWORD cbBuf,
  487. /* [out] */ LPDWORD pcbNeeded,
  488. /* [out] */ LPDWORD pcReturned);
  489. DWORD RpcEnumMonitors(
  490. /* [unique][string][in] */ STRING_HANDLE pName,
  491. /* [in] */ DWORD Level,
  492. /* [size_is][unique][out][in] */ LPBYTE pMonitor,
  493. /* [in] */ DWORD cbBuf,
  494. /* [out] */ LPDWORD pcbNeeded,
  495. /* [out] */ LPDWORD pcReturned);
  496. DWORD RpcAddPort(
  497. /* [unique][string][in] */ STRING_HANDLE pName,
  498. /* [in] */ DWORD hWnd,
  499. /* [string][in] */ wchar_t __RPC_FAR *pMonitorName);
  500. DWORD RpcConfigurePort(
  501. /* [unique][string][in] */ STRING_HANDLE pName,
  502. /* [in] */ DWORD hWnd,
  503. /* [string][in] */ wchar_t __RPC_FAR *pPortName);
  504. DWORD RpcDeletePort(
  505. /* [unique][string][in] */ STRING_HANDLE pName,
  506. /* [in] */ DWORD hWnd,
  507. /* [string][in] */ wchar_t __RPC_FAR *pPortName);
  508. DWORD RpcCreatePrinterIC(
  509. /* [in] */ PRINTER_HANDLE hPrinter,
  510. /* [out] */ GDI_HANDLE __RPC_FAR *pHandle,
  511. /* [in] */ LPDEVMODE_CONTAINER pDevModeContainer);
  512. DWORD RpcPlayGdiScriptOnPrinterIC(
  513. /* [in] */ GDI_HANDLE hPrinterIC,
  514. /* [size_is][in] */ LPBYTE pIn,
  515. /* [in] */ DWORD cIn,
  516. /* [size_is][out] */ LPBYTE pOut,
  517. /* [in] */ DWORD cOut,
  518. /* [in] */ DWORD ul);
  519. DWORD RpcDeletePrinterIC(
  520. /* [out][in] */ GDI_HANDLE __RPC_FAR *phPrinterIC);
  521. DWORD RpcAddPrinterConnection(
  522. /* [string][in] */ STRING_HANDLE pName);
  523. DWORD RpcDeletePrinterConnection(
  524. /* [string][in] */ STRING_HANDLE pName);
  525. DWORD RpcPrinterMessageBox(
  526. /* [in] */ PRINTER_HANDLE hPrinter,
  527. /* [in] */ DWORD Error,
  528. /* [in] */ DWORD hWnd,
  529. /* [unique][string][in] */ wchar_t __RPC_FAR *pText,
  530. /* [unique][string][in] */ wchar_t __RPC_FAR *pCaption,
  531. /* [in] */ DWORD dwType);
  532. DWORD RpcAddMonitor(
  533. /* [unique][string][in] */ STRING_HANDLE Name,
  534. /* [in] */ PMONITOR_CONTAINER pMonitorContainer);
  535. DWORD RpcDeleteMonitor(
  536. /* [unique][string][in] */ STRING_HANDLE Name,
  537. /* [string][unique][in] */ wchar_t __RPC_FAR *pEnvironment,
  538. /* [string][in] */ wchar_t __RPC_FAR *pMonitorName);
  539. DWORD RpcDeletePrintProcessor(
  540. /* [unique][string][in] */ STRING_HANDLE Name,
  541. /* [string][unique][in] */ wchar_t __RPC_FAR *pEnvironment,
  542. /* [string][in] */ wchar_t __RPC_FAR *pPrintProcessorName);
  543. DWORD RpcAddPrintProvidor(
  544. /* [unique][string][in] */ STRING_HANDLE Name,
  545. /* [in] */ PPROVIDOR_CONTAINER pProvidorContainer);
  546. DWORD RpcDeletePrintProvidor(
  547. /* [unique][string][in] */ STRING_HANDLE Name,
  548. /* [string][unique][in] */ wchar_t __RPC_FAR *pEnvironment,
  549. /* [string][in] */ wchar_t __RPC_FAR *pPrintProvidorName);
  550. DWORD RpcEnumPrintProcessorDatatypes(
  551. /* [unique][string][in] */ STRING_HANDLE pName,
  552. /* [string][unique][in] */ wchar_t __RPC_FAR *pPrintProcessorName,
  553. /* [in] */ DWORD Level,
  554. /* [size_is][unique][out][in] */ LPBYTE pDatatypes,
  555. /* [in] */ DWORD cbBuf,
  556. /* [out] */ LPDWORD pcbNeeded,
  557. /* [out] */ LPDWORD pcReturned);
  558. DWORD RpcResetPrinter(
  559. /* [in] */ PRINTER_HANDLE hPrinter,
  560. /* [unique][string][in] */ wchar_t __RPC_FAR *pDatatype,
  561. /* [in] */ LPDEVMODE_CONTAINER pDevMode);
  562. DWORD RpcGetPrinterDriver2(
  563. /* [in] */ PRINTER_HANDLE hPrinter,
  564. /* [string][unique][in] */ wchar_t __RPC_FAR *pEnvironment,
  565. /* [in] */ DWORD Level,
  566. /* [size_is][unique][out][in] */ LPBYTE pDriver,
  567. /* [in] */ DWORD cbBuf,
  568. /* [out] */ LPDWORD pcbNeeded,
  569. /* [in] */ DWORD dwClientMajorVersion,
  570. /* [in] */ DWORD dwClientMinorVersion,
  571. /* [out] */ LPDWORD pdwServerMaxVersion,
  572. /* [out] */ LPDWORD pdwServerMinVersion);
  573. DWORD RpcClientFindFirstPrinterChangeNotification(
  574. /* [in] */ PRINTER_HANDLE hPrinter,
  575. /* [in] */ DWORD fdwFlags,
  576. /* [in] */ DWORD fdwOptions,
  577. /* [in] */ DWORD dwPID,
  578. /* [unique][in] */ PRPC_V2_NOTIFY_OPTIONS pOptions,
  579. /* [out] */ LPDWORD pdwEvent);
  580. DWORD RpcFindNextPrinterChangeNotification(
  581. /* [in] */ PRINTER_HANDLE hPrinter,
  582. /* [in] */ DWORD fdwFlags,
  583. /* [out] */ LPDWORD pdwChange,
  584. /* [unique][in] */ PRPC_V2_NOTIFY_OPTIONS pOptions,
  585. /* [out] */ PRPC_V2_NOTIFY_INFO __RPC_FAR *ppInfo);
  586. DWORD RpcFindClosePrinterChangeNotification(
  587. /* [in] */ PRINTER_HANDLE hPrinter);
  588. DWORD RpcRouterFindFirstPrinterChangeNotificationOld(
  589. /* [in] */ PRINTER_HANDLE hPrinter,
  590. /* [in] */ DWORD fdwFlags,
  591. /* [in] */ DWORD fdwOptions,
  592. /* [unique][string][in] */ wchar_t __RPC_FAR *pszLocalMachine,
  593. /* [in] */ DWORD dwPrinterLocal);
  594. DWORD RpcReplyOpenPrinter(
  595. /* [string][in] */ STRING_HANDLE pMachine,
  596. /* [out] */ PRINTER_HANDLE __RPC_FAR *phPrinterNotify,
  597. /* [in] */ DWORD dwPrinterRemote,
  598. /* [in] */ DWORD dwType,
  599. /* [in] */ DWORD cbBuffer,
  600. /* [size_is][unique][in] */ LPBYTE pBuffer);
  601. DWORD RpcRouterReplyPrinter(
  602. /* [in] */ PRINTER_HANDLE hNotify,
  603. /* [in] */ DWORD fdwFlags,
  604. /* [in] */ DWORD cbBuffer,
  605. /* [size_is][unique][in] */ LPBYTE pBuffer);
  606. DWORD RpcReplyClosePrinter(
  607. /* [out][in] */ PRINTER_HANDLE __RPC_FAR *phNotify);
  608. DWORD RpcAddPortEx(
  609. /* [unique][string][in] */ STRING_HANDLE pName,
  610. /* [in] */ LPPORT_CONTAINER pPortContainer,
  611. /* [in] */ LPPORT_VAR_CONTAINER pPortVarContainer,
  612. /* [string][in] */ wchar_t __RPC_FAR *pMonitorName);
  613. DWORD RpcRemoteFindFirstPrinterChangeNotification(
  614. /* [in] */ PRINTER_HANDLE hPrinter,
  615. /* [in] */ DWORD fdwFlags,
  616. /* [in] */ DWORD fdwOptions,
  617. /* [unique][string][in] */ wchar_t __RPC_FAR *pszLocalMachine,
  618. /* [in] */ DWORD dwPrinterLocal,
  619. /* [in] */ DWORD cbBuffer,
  620. /* [size_is][unique][out][in] */ LPBYTE pBuffer);
  621. DWORD RpcSpoolerInit(
  622. /* [in] */ STRING_HANDLE pName);
  623. DWORD RpcResetPrinterEx(
  624. /* [in] */ PRINTER_HANDLE hPrinter,
  625. /* [unique][string][in] */ wchar_t __RPC_FAR *pDatatype,
  626. /* [in] */ LPDEVMODE_CONTAINER pDevMode,
  627. /* [in] */ DWORD dwFlags);
  628. DWORD RpcRemoteFindFirstPrinterChangeNotificationEx(
  629. /* [in] */ PRINTER_HANDLE hPrinter,
  630. /* [in] */ DWORD fdwFlags,
  631. /* [in] */ DWORD fdwOptions,
  632. /* [unique][string][in] */ wchar_t __RPC_FAR *pszLocalMachine,
  633. /* [in] */ DWORD dwPrinterLocal,
  634. /* [unique][in] */ PRPC_V2_NOTIFY_OPTIONS pOptions);
  635. DWORD RpcRouterReplyPrinterEx(
  636. /* [in] */ PRINTER_HANDLE hNotify,
  637. /* [in] */ DWORD dwColor,
  638. /* [in] */ DWORD fdwFlags,
  639. /* [out] */ PDWORD pdwResult,
  640. /* [in] */ DWORD dwReplyType,
  641. /* [switch_is][in] */ RPC_V2_UREPLY_PRINTER Reply);
  642. DWORD RpcRouterRefreshPrinterChangeNotification(
  643. /* [in] */ PRINTER_HANDLE hPrinter,
  644. /* [in] */ DWORD dwColor,
  645. /* [unique][in] */ PRPC_V2_NOTIFY_OPTIONS pOptions,
  646. /* [out] */ PRPC_V2_NOTIFY_INFO __RPC_FAR *ppInfo);
  647. DWORD RpcSetAllocFailCount(
  648. /* [in] */ PRINTER_HANDLE hPrinter,
  649. /* [in] */ DWORD dwFailCount,
  650. /* [out] */ LPDWORD lpdwAllocCount,
  651. /* [out] */ LPDWORD lpdwFreeCount,
  652. /* [out] */ LPDWORD lpdwFailCountHit);
  653. DWORD RpcOpenPrinterEx(
  654. /* [unique][string][in] */ STRING_HANDLE pPrinterName,
  655. /* [out] */ PRINTER_HANDLE __RPC_FAR *pHandle,
  656. /* [unique][string][in] */ wchar_t __RPC_FAR *pDatatype,
  657. /* [in] */ LPDEVMODE_CONTAINER pDevMode,
  658. /* [in] */ DWORD AccessRequired,
  659. /* [in] */ PSPLCLIENT_CONTAINER pClientInfo);
  660. DWORD RpcAddPrinterEx(
  661. /* [unique][string][in] */ STRING_HANDLE pName,
  662. /* [in] */ PPRINTER_CONTAINER pPrinterContainer,
  663. /* [in] */ PDEVMODE_CONTAINER pDevModeContainer,
  664. /* [in] */ PSECURITY_CONTAINER pSecurityContainer,
  665. /* [in] */ PSPLCLIENT_CONTAINER pClientInfo,
  666. /* [out] */ PRINTER_HANDLE __RPC_FAR *pHandle);
  667. DWORD RpcSetPort(
  668. /* [unique][string][in] */ STRING_HANDLE pName,
  669. /* [unique][string][in] */ wchar_t __RPC_FAR *pPortName,
  670. /* [in] */ LPPORT_CONTAINER pPortContainer);
  671. DWORD RpcEnumPrinterData(
  672. /* [in] */ PRINTER_HANDLE hPrinter,
  673. /* [in] */ DWORD dwIndex,
  674. /* [size_is][out] */ wchar_t __RPC_FAR *pValueName,
  675. /* [in] */ DWORD cbValueName,
  676. /* [out] */ LPDWORD pcbValueName,
  677. /* [out] */ LPDWORD pType,
  678. /* [size_is][out] */ LPBYTE pData,
  679. /* [in] */ DWORD cbData,
  680. /* [out] */ LPDWORD pcbData);
  681. DWORD RpcDeletePrinterData(
  682. /* [in] */ PRINTER_HANDLE hPrinter,
  683. /* [string][in] */ wchar_t __RPC_FAR *pValueName);
  684. DWORD RpcClusterSplOpen(
  685. /* [unique][string][in] */ STRING_HANDLE pServerName,
  686. /* [unique][string][in] */ wchar_t __RPC_FAR *pResource,
  687. /* [out] */ PRINTER_HANDLE __RPC_FAR *pHandle,
  688. /* [unique][string][in] */ wchar_t __RPC_FAR *pName,
  689. /* [unique][string][in] */ wchar_t __RPC_FAR *pAddress);
  690. DWORD RpcClusterSplClose(
  691. /* [out][in] */ PRINTER_HANDLE __RPC_FAR *phPrinter);
  692. DWORD RpcClusterSplIsAlive(
  693. /* [in] */ PRINTER_HANDLE hPrinter);
  694. DWORD RpcSetPrinterDataEx(
  695. /* [in] */ PRINTER_HANDLE hPrinter,
  696. /* [string][in] */ const wchar_t __RPC_FAR *pKeyName,
  697. /* [string][in] */ const wchar_t __RPC_FAR *pValueName,
  698. /* [in] */ DWORD Type,
  699. /* [size_is][in] */ LPBYTE pData,
  700. /* [in] */ DWORD cbData);
  701. DWORD RpcGetPrinterDataEx(
  702. /* [in] */ PRINTER_HANDLE hPrinter,
  703. /* [string][in] */ const wchar_t __RPC_FAR *pKeyName,
  704. /* [string][in] */ const wchar_t __RPC_FAR *pValueName,
  705. /* [out] */ LPDWORD pType,
  706. /* [size_is][out] */ LPBYTE pData,
  707. /* [in] */ DWORD nSize,
  708. /* [out] */ LPDWORD pcbNeeded);
  709. DWORD RpcEnumPrinterDataEx(
  710. /* [in] */ PRINTER_HANDLE hPrinter,
  711. /* [string][in] */ const wchar_t __RPC_FAR *pKeyName,
  712. /* [size_is][out] */ LPBYTE pEnumValues,
  713. /* [in] */ DWORD cbEnumValues,
  714. /* [out] */ LPDWORD pcbEnumValues,
  715. /* [out] */ LPDWORD pnEnumValues);
  716. DWORD RpcEnumPrinterKey(
  717. /* [in] */ PRINTER_HANDLE hPrinter,
  718. /* [string][in] */ const wchar_t __RPC_FAR *pKeyName,
  719. /* [size_is][out] */ wchar_t __RPC_FAR *pSubkey,
  720. /* [in] */ DWORD cbSubkey,
  721. /* [out] */ LPDWORD pcbSubkey);
  722. DWORD RpcDeletePrinterDataEx(
  723. /* [in] */ PRINTER_HANDLE hPrinter,
  724. /* [string][in] */ const wchar_t __RPC_FAR *pKeyName,
  725. /* [string][in] */ const wchar_t __RPC_FAR *pValueName);
  726. DWORD RpcDeletePrinterKey(
  727. /* [in] */ PRINTER_HANDLE hPrinter,
  728. /* [string][in] */ const wchar_t __RPC_FAR *pKeyName);
  729. DWORD RpcSeekPrinter(
  730. /* [in] */ PRINTER_HANDLE hPrinter,
  731. /* [in] */ LARGE_INTEGER liDistanceToMove,
  732. /* [out] */ PLARGE_INTEGER pliNewPointer,
  733. /* [in] */ DWORD dwMoveMethod,
  734. /* [in] */ BOOL bWrite);
  735. DWORD RpcDeletePrinterDriverEx(
  736. /* [unique][string][in] */ STRING_HANDLE pName,
  737. /* [string][in] */ wchar_t __RPC_FAR *pEnvironment,
  738. /* [string][in] */ wchar_t __RPC_FAR *pDriverName,
  739. /* [in] */ DWORD dwDeleteFlag,
  740. /* [in] */ DWORD dwVersionNum);
  741. DWORD RpcAddPerMachineConnection(
  742. /* [unique][string][in] */ STRING_HANDLE pServer,
  743. /* [string][in] */ const wchar_t __RPC_FAR *pPrinterName,
  744. /* [string][in] */ const wchar_t __RPC_FAR *pPrintServer,
  745. /* [string][in] */ const wchar_t __RPC_FAR *pProvider);
  746. DWORD RpcDeletePerMachineConnection(
  747. /* [unique][string][in] */ STRING_HANDLE pServer,
  748. /* [string][in] */ const wchar_t __RPC_FAR *pPrinterName);
  749. DWORD RpcEnumPerMachineConnections(
  750. /* [unique][string][in] */ STRING_HANDLE pServer,
  751. /* [size_is][unique][out][in] */ LPBYTE pPrinterEnum,
  752. /* [in] */ DWORD cbBuf,
  753. /* [out] */ LPDWORD pcbNeeded,
  754. /* [out] */ LPDWORD pcReturned);
  755. DWORD RpcXcvData(
  756. /* [in] */ PRINTER_HANDLE hXcv,
  757. /* [string][in] */ const wchar_t __RPC_FAR *pszDataName,
  758. /* [size_is][in] */ PBYTE pInputData,
  759. /* [in] */ DWORD cbInputData,
  760. /* [size_is][out] */ PBYTE pOutputData,
  761. /* [in] */ DWORD cbOutputData,
  762. /* [out] */ PDWORD pcbOutputNeeded,
  763. /* [out][in] */ PDWORD pdwStatus);
  764. DWORD RpcAddPrinterDriverEx(
  765. /* [unique][string][in] */ STRING_HANDLE pName,
  766. /* [in] */ PDRIVER_CONTAINER pDriverContainer,
  767. /* [in] */ DWORD dwFileCopyFlags);
  768. DWORD RpcSplOpenPrinter(
  769. /* [unique][string][in] */ STRING_HANDLE pPrinterName,
  770. /* [out] */ PRINTER_HANDLE __RPC_FAR *pHandle,
  771. /* [unique][string][in] */ wchar_t __RPC_FAR *pDatatype,
  772. /* [in] */ LPDEVMODE_CONTAINER pDevMode,
  773. /* [in] */ DWORD AccessRequired,
  774. /* [out][in] */ PSPLCLIENT_CONTAINER pSplClientContainer);
  775. DWORD RpcGetSpoolFileInfo(
  776. /* [in] */ PRINTER_HANDLE hPrinter,
  777. /* [in] */ DWORD dwAppProcessId,
  778. /* [in] */ DWORD dwLevel,
  779. /* [size_is][out] */ LPBYTE pSpoolFileInfo,
  780. /* [in] */ DWORD cbBuf,
  781. /* [out] */ LPDWORD pcbNeeded);
  782. DWORD RpcCommitSpoolData(
  783. /* [in] */ PRINTER_HANDLE hPrinter,
  784. /* [in] */ DWORD dwAppProcessId,
  785. /* [in] */ DWORD cbCommit,
  786. /* [in] */ DWORD dwLevel,
  787. /* [size_is][out] */ LPBYTE pSpoolFileInfo,
  788. /* [in] */ DWORD cbBuf,
  789. /* [out] */ LPDWORD pcbNeeded);
  790. DWORD RpcCloseSpoolFileHandle(
  791. /* [in] */ PRINTER_HANDLE hPrinter);
  792. DWORD RpcFlushPrinter(
  793. /* [in] */ PRINTER_HANDLE hPrinter,
  794. /* [size_is][in] */ LPBYTE pBuf,
  795. /* [in] */ DWORD cbBuf,
  796. /* [out] */ LPDWORD pcWritten,
  797. /* [in] */ DWORD cSleep);
  798. extern handle_t winspool_bhandle;
  799. extern RPC_IF_HANDLE winspool_ClientIfHandle;
  800. extern RPC_IF_HANDLE winspool_ServerIfHandle;
  801. #endif /* __winspool_INTERFACE_DEFINED__ */
  802. /* Additional Prototypes for ALL interfaces */
  803. handle_t __RPC_USER STRING_HANDLE_bind ( STRING_HANDLE );
  804. void __RPC_USER STRING_HANDLE_unbind( STRING_HANDLE, handle_t );
  805. void __RPC_USER PRINTER_HANDLE_rundown( PRINTER_HANDLE );
  806. void __RPC_USER GDI_HANDLE_rundown( GDI_HANDLE );
  807. /* end of Additional Prototypes */
  808. #ifdef __cplusplus
  809. }
  810. #endif
  811. #endif