ReactOS  0.4.15-dev-1377-ga59cecd
winspool.idl
Go to the documentation of this file.
1 /*
2  * PROJECT: ReactOS Spooler API
3  * LICENSE: This file is in the public domain
4  * PURPOSE: WIDL-compatible interface definition for the Spooler API
5  * AUTHORS: Colin Finck <colin@reactos.org>
6  */
7 
8 #include <ms-dtyp.idl>
9 
10 /*
11  * Handle definitions
12  */
13 typedef [context_handle] void* WINSPOOL_GDI_HANDLE;
14 typedef [context_handle] void* WINSPOOL_PRINTER_HANDLE;
16 
17 
18 /*
19  * Type definitions and enumerations
20  */
22 
23 typedef enum
24 {
33 }
35 
36 typedef enum
37 {
43 }
45 
46 
47 /*
48  * Various definitions
49  */
50 typedef struct _WINSPOOL_RECTL
51 {
56 }
58 
59 typedef struct _WINSPOOL_SIZEL
60 {
63 }
65 
66 
67 /*
68  * INFO structures
69  */
70 typedef struct _WINSPOOL_DOC_INFO_1 {
74 }
76 
78 {
80 }
82 
84 {
91 }
93 
95 {
107 }
109 
111 {
125 }
127 
129 {
149 }
151 
153 {
183 }
185 
186 typedef struct _WINSPOOL_FORM_INFO_1
187 {
192 }
194 
195 typedef struct _WINSPOOL_FORM_INFO_2
196 {
207 }
209 
210 typedef struct _WINSPOOL_JOB_INFO_1
211 {
225 }
227 
228 typedef struct _WINSPOOL_JOB_INFO_2
229 {
253 }
255 
256 typedef struct _WINSPOOL_JOB_INFO_3
257 {
261 }
263 
264 typedef struct _WINSPOOL_JOB_INFO_4
265 {
290 }
292 
294 {
296 }
298 
300 {
304 }
306 
307 typedef struct _WINSPOOL_PORT_INFO_1
308 {
310 }
312 
313 typedef struct _WINSPOOL_PORT_INFO_2
314 {
320 }
322 
323 typedef struct _WINSPOOL_PORT_INFO_3
324 {
328 }
330 
332 {
336 }
338 
369 }
371 
373 {
378 }
380 
382 {
404 }
406 
408 {
410 }
412 
414 {
418 }
420 
422 {
428 }
430 
432 {
434 }
436 
438 {
441 }
443 
445 {
447 }
449 
451 {
453 }
455 
457 {
461 }
463 
465 {
467 }
469 
471 {
479 }
481 
483 {
485 }
487 
489 {
500 }
502 
503 
504 /*
505  * CONTAINER structures
506  */
508 {
510  [size_is(cbBuf), unique] BYTE* pszString;
511 }
513 
514 typedef struct _WINSPOOL_BIDI_DATA
515 {
517 
518  [switch_is(dwBidiType)] union
519  {
522  [case(WINSPOOL_BIDI_INT)]
526  [case(WINSPOOL_BIDI_FLOAT)]
528  [case(WINSPOOL_BIDI_BLOB)]
530  }
531  u;
532 }
534 
536 {
540 }
542 
544 {
549 }
551 
553 {
558 }
560 
562 {
567 }
569 
571 {
573 
574  [switch_is(Level)] union
575  {
576  [case(1)]
578  }
579  DocInfo;
580 }
582 
584 {
586  [size_is(cbBuf), unique] BYTE* pDevMode;
587 }
589 
591 {
593 
594  [switch_is(Level)] union
595  {
596  [case(1)]
598  [case(2)]
600  [case(3)]
602  [case(4)]
604  [case(6)]
606  [case(8)]
608  }
609  DriverInfo;
610 }
612 
614 {
616 
617  [switch_is(Level)] union
618  {
619  [case(1)]
621  [case(2)]
623  }
624  FormInfo;
625 }
627 
629 {
631 
632  [switch_is(Level)] union
633  {
634  [case(1)]
636  [case(2)]
638  [case(3)]
640  [case(4)]
642  }
643  JobInfo;
644 }
646 
648 {
650 
651  [switch_is(Level)] union
652  {
653  [case(1)]
655  [case(2)]
657  }
658  MonitorInfo;
659 }
661 
663 {
665 
666  [switch_is(0x00FFFFFF & Level)]
667  union
668  {
669  [case(1)]
671  [case(2)]
673  [case(3)]
675  [case(0x00FFFFFF)]
677  }
678  PortInfo;
679 }
681 
683 {
686 }
688 
690 {
692 
693  [switch_is(Level)] union
694  {
695  [case(0)]
697  [case(1)]
699  [case(2)]
701  [case(3)]
703  [case(4)]
705  [case(5)]
707  [case(6)]
709  [case(7)]
711  [case(8)]
713  [case(9)]
715  }
716  PrinterInfo;
717 }
719 
721 {
723 
724  [switch_is(Level)] union
725  {
726  [case(1)]
728  [case(2)]
730  }
731  ProvidorInfo;
732 }
734 
736 {
738  [size_is(cbBuf), unique] BYTE* pSecurity;
739 }
741 
743 {
745 
746  [switch_is(Level)] union
747  {
748  [case(1)]
750  [case(2)]
752  [case(3)]
754  }
755  ClientInfo;
756 }
758 
760 {
762  [size_is(cbBuf / 2), unique] WCHAR* pszString;
763 }
765 
769 }
771 
772 
773 /*
774  * Various definitions
775  */
777 {
783  [size_is(Count), unique] USHORT* pFields;
784 }
786 
788 {
793 }
795 
796 typedef [switch_type(DWORD)] union _WINSPOOL_V2_NOTIFY_INFO_DATA_DATA
797 {
798  [case(WINSPOOL_TABLE_STRING)]
800  [case(WINSPOOL_TABLE_DWORD)]
802  [case(WINSPOOL_TABLE_TIME)]
804  [case(WINSPOOL_TABLE_DEVMODE)]
808 }
810 
812 {
818 }
820 
822 {
827 }
829 
830 typedef [switch_type(DWORD)] union _WINSPOOL_V2_UREPLY_PRINTER
831 {
832  [case(0)]
834 }
836 
837 typedef struct _WINSPOOL_FILE_INFO_1
838 {
842 }
844 
846 {
848 
849  [switch_is(Level)] union
850  {
851  [case(1)]
853  }
854  FileInfo;
855 }
857 
858 /*
859  * The actual interface
860  */
861 [
862  uuid(12345678-1234-ABCD-EF00-0123456789AB),
863  version(1.0),
864  endpoint("ncalrpc:[spoolss]", "ncacn_np:[\\pipe\\spoolss]"),
866 ]
867 
868 interface winspool {
869  /* Function 0x00 */
871  [in] DWORD Flags,
873  [in] DWORD Level,
874  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pPrinterEnum,
875  [in] DWORD cbBuf,
876  [out] DWORD* pcbNeeded,
877  [out] DWORD* pcReturned
878  );
879 
880  /* Function 0x01 */
882  [in, unique] WINSPOOL_HANDLE pPrinterName,
883  [out] WINSPOOL_PRINTER_HANDLE* phPrinter,
884  [in, string, unique] WCHAR* pDatatype,
885  [in] WINSPOOL_DEVMODE_CONTAINER* pDevModeContainer,
886  [in] DWORD AccessRequired
887  );
888 
889  /* Function 0x02 */
891  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
892  [in] DWORD JobId,
893  [in, unique] WINSPOOL_JOB_CONTAINER* pJobContainer,
894  [in] DWORD Command
895  );
896 
897  /* Function 0x03 */
899  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
900  [in] DWORD JobId,
901  [in] DWORD Level,
902  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pJob,
903  [in] DWORD cbBuf,
904  [out] DWORD* pcbNeeded
905  );
906 
907  /* Function 0x04 */
909  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
910  [in] DWORD FirstJob,
911  [in] DWORD NoJobs,
912  [in] DWORD Level,
913  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pJob,
914  [in] DWORD cbBuf,
915  [out] DWORD* pcbNeeded,
916  [out] DWORD* pcReturned
917  );
918 
919  /* Function 0x05 */
922  [in] WINSPOOL_PRINTER_CONTAINER* pPrinterContainer,
923  [in] WINSPOOL_DEVMODE_CONTAINER* pDevModeContainer,
924  [in] WINSPOOL_SECURITY_CONTAINER* pSecurityContainer,
925  [out] WINSPOOL_PRINTER_HANDLE* pHandle
926  );
927 
928  /* Function 0x06 */
930  [in] WINSPOOL_PRINTER_HANDLE hPrinter
931  );
932 
933  /* Function 0x07 */
935  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
936  [in] WINSPOOL_PRINTER_CONTAINER* pPrinterContainer,
937  [in] WINSPOOL_DEVMODE_CONTAINER* pDevModeContainer,
938  [in] WINSPOOL_SECURITY_CONTAINER* pSecurityContainer,
939  [in] DWORD Command
940  );
941 
942  /* Function 0x08 */
944  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
945  [in] DWORD Level,
946  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pPrinter,
947  [in] DWORD cbBuf,
948  [out] DWORD* pcbNeeded
949  );
950 
951  /* Function 0x09 */
954  [in] WINSPOOL_DRIVER_CONTAINER* pDriverContainer
955  );
956 
957  /* Function 0x0A */
960  [in, string, unique] WCHAR* pEnvironment,
961  [in] DWORD Level,
962  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pDrivers,
963  [in] DWORD cbBuf,
964  [out] DWORD* pcbNeeded,
965  [out] DWORD* pcReturned
966  );
967 
968  /* Function 0x0B */
970  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
971  [in, string, unique] WCHAR* pEnvironment,
972  [in] DWORD Level,
973  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pDriver,
974  [in] DWORD cbBuf,
975  [out] DWORD* pcbNeeded
976  );
977 
978  /* Function 0x0C */
981  [in, string, unique] WCHAR* pEnvironment,
982  [in] DWORD Level,
983  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pDriverDirectory,
984  [in] DWORD cbBuf,
985  [out] DWORD* pcbNeeded
986  );
987 
988  /* Function 0x0D */
991  [in, string] WCHAR* pEnvironment,
992  [in, string] WCHAR* pDriverName
993  );
994 
995  /* Function 0x0E */
998  [in, string] WCHAR* pEnvironment,
999  [in, string] WCHAR* pPathName,
1000  [in, string] WCHAR* pPrintProcessorName
1001  );
1002 
1003  /* Function 0x0F */
1006  [in, string, unique] WCHAR* pEnvironment,
1007  [in] DWORD Level,
1008  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pPrintProcessorInfo,
1009  [in] DWORD cbBuf,
1010  [out] DWORD* pcbNeeded,
1011  [out] DWORD* pcReturned
1012  );
1013 
1014  /* Function 0x10 */
1017  [in, string, unique] WCHAR* pEnvironment,
1018  [in] DWORD Level,
1019  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pPrintProcessorDirectory,
1020  [in] DWORD cbBuf,
1021  [out] DWORD* pcbNeeded
1022  );
1023 
1024  /* Function 0x11 */
1026  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1027  [in] WINSPOOL_DOC_INFO_CONTAINER* pDocInfoContainer,
1028  [out] DWORD* pJobId
1029  );
1030 
1031  /* Function 0x12 */
1033  [in] WINSPOOL_PRINTER_HANDLE hPrinter
1034  );
1035 
1036  /* Function 0x13 */
1038  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1039  [in, size_is(cbBuf)] BYTE* pBuf,
1040  [in] DWORD cbBuf,
1041  [out] DWORD* pcWritten
1042  );
1043 
1044  /* Function 0x14 */
1046  [in] WINSPOOL_PRINTER_HANDLE hPrinter
1047  );
1048 
1049  /* Function 0x15 */
1051  [in] WINSPOOL_PRINTER_HANDLE hPrinter
1052  );
1053 
1054  /* Function 0x16 */
1056  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1057  [out, size_is(cbBuf)] BYTE* pBuf,
1058  [in] DWORD cbBuf,
1059  [out] DWORD* pcNoBytesRead
1060  );
1061 
1062  /* Function 0x17 */
1064  [in] WINSPOOL_PRINTER_HANDLE hPrinter
1065  );
1066 
1067  /* Function 0x18 */
1068  DWORD _RpcAddJob(
1069  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1070  [in] DWORD Level,
1071  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pAddJob,
1072  [in] DWORD cbBuf,
1073  [out] DWORD* pcbNeeded
1074  );
1075 
1076  /* Function 0x19 */
1078  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1079  [in] DWORD JobId
1080  );
1081 
1082  /* Function 0x1A */
1084  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1085  [in, string] WCHAR* pValueName,
1086  [out] DWORD* pType,
1087  [out, size_is(nSize)] BYTE* pData,
1088  [in] DWORD nSize,
1089  [out] DWORD* pcbNeeded
1090  );
1091 
1092  /* Function 0x1B */
1094  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1095  [in, string] WCHAR* pValueName,
1096  [in] DWORD Type,
1097  [in, size_is(cbData)] BYTE* pData,
1098  [in] DWORD cbData
1099  );
1100 
1101  /* Function 0x1C */
1103  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1104  [in] DWORD Flags,
1105  [out] DWORD* pFlags
1106  );
1107 
1108  /* Function 0x1D */
1110  [in, out] WINSPOOL_PRINTER_HANDLE* phPrinter
1111  );
1112 
1113  /* Function 0x1E */
1115  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1116  [in] WINSPOOL_FORM_CONTAINER* pFormInfoContainer
1117  );
1118 
1119  /* Function 0x1F */
1121  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1122  [in, string] WCHAR* pFormName
1123  );
1124 
1125  /* Function 0x20 */
1127  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1128  [in, string] WCHAR* pFormName,
1129  [in] DWORD Level,
1130  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pForm,
1131  [in] DWORD cbBuf,
1132  [out] DWORD* pcbNeeded
1133  );
1134 
1135  /* Function 0x21 */
1137  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1138  [in, string] WCHAR* pFormName,
1139  [in] WINSPOOL_FORM_CONTAINER* pFormInfoContainer
1140  );
1141 
1142  /* Function 0x22 */
1144  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1145  [in] DWORD Level,
1146  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pForm,
1147  [in] DWORD cbBuf,
1148  [out] DWORD* pcbNeeded,
1149  [out] DWORD* pcReturned
1150  );
1151 
1152  /* Function 0x23 */
1155  [in] DWORD Level,
1156  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pPort,
1157  [in] DWORD cbBuf,
1158  [out] DWORD* pcbNeeded,
1159  [out] DWORD* pcReturned
1160  );
1161 
1162  /* Function 0x24 */
1165  [in] DWORD Level,
1166  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pMonitor,
1167  [in] DWORD cbBuf,
1168  [out] DWORD* pcbNeeded,
1169  [out] DWORD* pcReturned
1170  );
1171 
1172  /* Function 0x25 */
1175  [in] ULONG_PTR hWnd,
1176  [in, string] WCHAR* pMonitorName
1177  );
1178 
1179  /* Function 0x26 */
1182  [in] ULONG_PTR hWnd,
1183  [in, string] WCHAR* pPortName
1184  );
1185 
1186  /* Function 0x27 */
1189  [in] ULONG_PTR hWnd,
1190  [in, string] WCHAR* pPortName
1191  );
1192 
1193  /* Function 0x28 */
1195  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1196  [out] WINSPOOL_GDI_HANDLE* pHandle,
1197  [in] WINSPOOL_DEVMODE_CONTAINER* pDevModeContainer
1198  );
1199 
1200  /* Function 0x29 */
1202  [in] WINSPOOL_GDI_HANDLE hPrinterIC,
1203  [in, size_is(cIn)] BYTE* pIn,
1204  [in] DWORD cIn,
1205  [out, size_is(cOut)] BYTE* pOut,
1206  [in] DWORD cOut,
1207  [in] DWORD ul
1208  );
1209 
1210  /* Function 0x2A */
1212  [in, out] WINSPOOL_GDI_HANDLE* phPrinterIC
1213  );
1214 
1215  /* Function 0x2B */
1218  );
1219 
1220  /* Function 0x2C */
1223  );
1224 
1225  /* Function 0x2D */
1227  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1228  [in] DWORD Error,
1229  [in] ULONG_PTR hWnd,
1230  [in, string] WCHAR* pText,
1231  [in, string] WCHAR* pCaption,
1232  [in] DWORD dwType
1233  );
1234 
1235  /* Function 0x2E */
1238  [in] WINSPOOL_MONITOR_CONTAINER* pMonitorContainer
1239  );
1240 
1241  /* Function 0x2F */
1244  [in, string, unique] WCHAR* pEnvironment,
1245  [in, string, unique] WCHAR* pMonitorName
1246  );
1247 
1248  /* Function 0x30 */
1251  [in, string, unique] WCHAR* pEnvironment,
1252  [in, string] WCHAR* pPrintProcessorName
1253  );
1254 
1255  /* Function 0x31 */
1258  [in] WINSPOOL_PROVIDOR_CONTAINER* pProvidorContainer
1259  );
1260 
1261  /* Function 0x32 */
1264  [in, string, unique] WCHAR* pEnvironment,
1265  [in, string] WCHAR* pPrintProviderName
1266  );
1267 
1268  /* Function 0x33 */
1271  [in, string, unique] WCHAR* pPrintProcessorName,
1272  [in] DWORD Level,
1273  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pDatatypes,
1274  [in] DWORD cbBuf,
1275  [out] DWORD* pcbNeeded,
1276  [out] DWORD* pcReturned
1277  );
1278 
1279  /* Function 0x34 */
1281  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1282  [in, string, unique] WCHAR* pDatatype,
1283  [in] WINSPOOL_DEVMODE_CONTAINER* pDevModeContainer
1284  );
1285 
1286  /* Function 0x35 */
1288  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1289  [in, string, unique] WCHAR* pEnvironment,
1290  [in] DWORD Level,
1291  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pDriver,
1292  [in] DWORD cbBuf,
1293  [out] DWORD* pcbNeeded,
1294  [in] DWORD dwClientMajorVersion,
1295  [in] DWORD dwClientMinorVersion,
1296  [out] DWORD* pdwServerMaxVersion,
1297  [out] DWORD* pdwServerMinVersion
1298  );
1299 
1300  /* Function 0x36 (TODO) */
1302  /* TODO */
1303  );
1304 
1305  /* Function 0x37 (TODO) */
1307  /* TODO */
1308  );
1309 
1310  /* Function 0x38 (TODO) */
1312  /* TODO */
1313  );
1314 
1315  /* Function 0x39 (TODO) */
1317  /* TODO */
1318  );
1319 
1320  /* Function 0x3A */
1322  [in] WINSPOOL_HANDLE pMachine,
1323  [out] WINSPOOL_PRINTER_HANDLE* phPrinterNotify,
1324  [in] DWORD dwPrinterRemote,
1325  [in] DWORD dwType,
1326  [in, range(0, 512)] DWORD cbBuffer,
1327  [in, unique, size_is(cbBuffer), disable_consistency_check] BYTE* pBuffer
1328  );
1329 
1330  /* Function 0x3B */
1332  [in] WINSPOOL_PRINTER_HANDLE hNotify,
1333  [in] DWORD fdwFlags,
1334  [in, range(0, 512)] DWORD cbBuffer,
1335  [in, unique, size_is(cbBuffer), disable_consistency_check] BYTE* pBuffer
1336  );
1337 
1338  /* Function 0x3C */
1340  [in, out] WINSPOOL_PRINTER_HANDLE* phNotify
1341  );
1342 
1343  /* Function 0x3D */
1346  [in] WINSPOOL_PORT_CONTAINER* pPortContainer,
1347  [in] WINSPOOL_PORT_VAR_CONTAINER* pPortVarContainer,
1348  [in, string] WCHAR* pMonitorName
1349  );
1350 
1351  /* Function 0x3E */
1353  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1354  [in] DWORD fdwFlags,
1355  [in] DWORD fdwOptions,
1356  [in, string, unique] WCHAR* pszLocalMachine,
1357  [in] DWORD dwPrinterLocal,
1358  [in, range(0, 512)] DWORD cbBuffer,
1359  [in, out, unique, size_is(cbBuffer), disable_consistency_check] BYTE* pBuffer
1360  );
1361 
1362  /* Function 0x3F */
1364 
1365  /* Function 0x40 */
1367  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1368  [in, string, unique] WCHAR* pDatatype,
1369  [in] WINSPOOL_DEVMODE_CONTAINER* pDevModeContainer,
1370  [in] DWORD dwFlags
1371  );
1372 
1373  /* Function 0x41 */
1375  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1376  [in] DWORD fdwFlags,
1377  [in] DWORD fdwOptions,
1378  [in, string, unique] WCHAR* pszLocalMachine,
1379  [in] DWORD dwPrinterLocal,
1380  [in, unique] WINSPOOL_V2_NOTIFY_OPTIONS* pOptions
1381  );
1382 
1383  /* Function 0x42 */
1385  [in] WINSPOOL_PRINTER_HANDLE hNotify,
1386  [in] DWORD dwColor,
1387  [in] DWORD fdwFlags,
1388  [out] DWORD* pdwResult,
1389  [in] DWORD dwReplyType,
1390  [in, switch_is(dwReplyType)] WINSPOOL_V2_UREPLY_PRINTER Reply
1391  );
1392 
1393  /* Function 0x43 */
1395  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1396  [in] DWORD dwColor,
1397  [in, unique] WINSPOOL_V2_NOTIFY_OPTIONS* pOptions,
1398  [out] WINSPOOL_V2_NOTIFY_INFO** ppInfo
1399  );
1400 
1401  /* Function 0x44 (TODO) */
1403  /* TODO */
1404  );
1405 
1406  /* Function 0x45 */
1408  [in, unique] WINSPOOL_HANDLE pPrinterName,
1409  [out] WINSPOOL_PRINTER_HANDLE* pHandle,
1410  [in, string, unique] WCHAR* pDatatype,
1411  [in] WINSPOOL_DEVMODE_CONTAINER* pDevModeContainer,
1412  [in] DWORD AccessRequired,
1413  [in] WINSPOOL_SPLCLIENT_CONTAINER* pClientInfo
1414  );
1415 
1416  /* Function 0x46 */
1419  [in] WINSPOOL_PRINTER_CONTAINER* pPrinterContainer,
1420  [in] WINSPOOL_DEVMODE_CONTAINER* pDevModeContainer,
1421  [in] WINSPOOL_SECURITY_CONTAINER* pSecurityContainer,
1422  [in] WINSPOOL_SPLCLIENT_CONTAINER* pClientInfo,
1423  [out] WINSPOOL_PRINTER_HANDLE* pHandle
1424  );
1425 
1426  /* Function 0x47 */
1429  [in, string, unique] WCHAR* pPortName,
1430  [in] WINSPOOL_PORT_CONTAINER* pPortContainer
1431  );
1432 
1433  /* Function 0x48 */
1435  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1436  [in] DWORD dwIndex,
1437  [out, size_is(cbValueName / sizeof(WCHAR))] WCHAR* pValueName,
1438  [in] DWORD cbValueName,
1439  [out] DWORD* pcbValueName,
1440  [out] DWORD* pType,
1441  [out, size_is(cbData)] BYTE* pData,
1442  [in] DWORD cbData,
1443  [out] DWORD* pcbData
1444  );
1445 
1446  /* Function 0x49 */
1448  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1449  [in, string] WCHAR* pValueName
1450  );
1451 
1452  /* Function 0x4A (TODO) */
1454  /* TODO */
1455  );
1456 
1457  /* Function 0x4B (TODO) */
1459  /* TODO */
1460  );
1461 
1462  /* Function 0x4C (TODO) */
1464  /* TODO */
1465  );
1466 
1467  /* Function 0x4D */
1469  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1470  [in, string] const WCHAR* pKeyName,
1471  [in, string] const WCHAR* pValueName,
1472  [in] DWORD Type,
1473  [in, size_is(cbData)] BYTE* pData,
1474  [in] DWORD cbData
1475  );
1476 
1477  /* Function 0x4E */
1479  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1480  [in, string] const WCHAR* pKeyName,
1481  [in, string] const WCHAR* pValueName,
1482  [out] DWORD* pType,
1483  [out, size_is(nSize)] BYTE* pData,
1484  [in] DWORD nSize,
1485  [out] DWORD* pcbNeeded
1486  );
1487 
1488  /* Function 0x4F */
1490  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1491  [in, string] const WCHAR* pKeyName,
1492  [out, size_is(cbEnumValues)] BYTE* pEnumValues,
1493  [in] DWORD cbEnumValues,
1494  [out] DWORD* pcbEnumValues,
1495  [out] DWORD* pnEnumValues
1496  );
1497 
1498  /* Function 0x50 */
1500  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1501  [in, string] const WCHAR* pKeyName,
1502  [out, size_is(cbSubkey / sizeof(WCHAR))] WCHAR* pSubkey,
1503  [in] DWORD cbSubkey,
1504  [out] DWORD* pcbSubkey
1505  );
1506 
1507  /* Function 0x51 */
1509  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1510  [in, string] const WCHAR* pKeyName,
1511  [in, string] const WCHAR* pValueName
1512  );
1513 
1514  /* Function 0x52 */
1516  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1517  [in, string] const WCHAR* pKeyName
1518  );
1519 
1520  /* Function 0x53 */
1522  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1523  [in] LARGE_INTEGER liDistanceToMove,
1524  [out] PLARGE_INTEGER pliNewPointer,
1525  [in] DWORD dwMoveMethod,
1526  [in] BOOL bWrite
1527  );
1528 
1529  /* Function 0x54 */
1532  [in, string] WCHAR* pEnvironment,
1533  [in, string] WCHAR* pDriverName,
1534  [in] DWORD dwDeleteFlag,
1535  [in] DWORD dwVersionNum
1536  );
1537 
1538  /* Function 0x55 */
1540  [in, unique] WINSPOOL_HANDLE pServer,
1541  [in, string] const WCHAR* pPrinterName,
1542  [in, string] const WCHAR* pPrintServer,
1543  [in, string] const WCHAR* pProvider
1544  );
1545 
1546  /* Function 0x56 */
1548  [in, unique] WINSPOOL_HANDLE pServer,
1549  [in, string] const WCHAR* pPrinterName
1550  );
1551 
1552  /* Function 0x57 */
1554  [in, unique] WINSPOOL_HANDLE pServer,
1555  [in, out, unique, size_is(cbBuf), disable_consistency_check] BYTE* pPrinterEnum,
1556  [in] DWORD cbBuf,
1557  [out] DWORD* pcbNeeded,
1558  [out] DWORD* pcReturned
1559  );
1560 
1561  /* Function 0x58 */
1564  [in, string] const WCHAR* pszDataName,
1565  [in, size_is(cbInputData)] BYTE* pInputData,
1566  [in] DWORD cbInputData,
1567  [out, size_is(cbOutputData)] BYTE* pOutputData,
1568  [in] DWORD cbOutputData,
1569  [out] DWORD* pcbOutputNeeded,
1570  [in, out] DWORD* pdwStatus
1571  );
1572 
1573  /* Function 0x59 */
1576  [in] WINSPOOL_DRIVER_CONTAINER* pDriverContainer,
1577  [in] DWORD dwFileCopyFlags
1578  );
1579 
1580  /* Function 0x5A (TODO) */
1582  /* TODO */
1583  );
1584 
1585  /* Function 0x5B */
1587  [in, unique] WINSPOOL_PRINTER_HANDLE hPrinter,
1588  [in] WINSPOOL_HANDLE hProcessHandle,
1589  [in] DWORD Level,
1590  [in] WINSPOOL_FILE_INFO_1* pFileInfo,
1591  [in] DWORD dwSize,
1592  [in] DWORD* dwNeeded
1593  );
1594 
1595  /* Function 0x5C */
1597  [in, unique] WINSPOOL_PRINTER_HANDLE hPrinter,
1598  [in, unique] WINSPOOL_HANDLE hProcessHandle,
1599  [in] DWORD cbCommit,
1600  [in] DWORD Level,
1601  [in] WINSPOOL_FILE_INFO_1* pFileInfo,
1602  [in] DWORD dwSize,
1603  [in] DWORD* dwNeeded
1604  );
1605 
1606  /* Function 0x5D */
1608  [in, unique] WINSPOOL_PRINTER_HANDLE hPrinter,
1609  [in] DWORD dwProcessId,
1610  [in] DWORD Level,
1611  [in] WINSPOOL_FILE_INFO_CONTAINER* pFileInfoContainer
1612  );
1613 
1614  /* Function 0x5E */
1616  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1617  [in] DWORD dwProcessId,
1618  [in] DWORD cbCommit,
1619  [in] DWORD Level,
1620  [in] WINSPOOL_FILE_INFO_CONTAINER* pFileInfoContainer
1621  );
1622 
1623  /* Function 0x5F */
1625  [in, unique] WINSPOOL_PRINTER_HANDLE hPrinter
1626  );
1627 
1628  /* Function 0x60 */
1630  [in, unique] WINSPOOL_PRINTER_HANDLE hPrinter,
1631  [in, size_is(cbBuf)] BYTE* pBuf,
1632  [in] DWORD cbBuf,
1633  [out] DWORD* pcWritten,
1634  [in] DWORD cSleep
1635  );
1636 
1637  /* Function 0x61 */
1639  [in] WINSPOOL_PRINTER_HANDLE hPrinter,
1640  [in, string, unique] const WCHAR* pAction,
1641  [in] WINSPOOL_BIDI_REQUEST_CONTAINER* pReqData,
1642  [out] WINSPOOL_BIDI_RESPONSE_CONTAINER** ppRespData
1643  );
1644 
1645  /* Function 0x62 (TODO) */
1647  /* TODO */
1648  );
1649 }
DWORD _RpcRouterReplyPrinterEx(WINSPOOL_PRINTER_HANDLE hNotify, DWORD dwColor, DWORD fdwFlags, DWORD *pdwResult, DWORD dwReplyType, WINSPOOL_V2_UREPLY_PRINTER Reply)
Definition: notifications.c:81
struct _WINSPOOL_PRINTER_INFO_2 WINSPOOL_PRINTER_INFO_2
DWORD _RpcSeekPrinter(WINSPOOL_PRINTER_HANDLE hPrinter, LARGE_INTEGER liDistanceToMove, PLARGE_INTEGER pliNewPointer, DWORD dwMoveMethod, BOOL bWrite)
Definition: printers.c:293
DWORD _RpcStartPagePrinter(WINSPOOL_PRINTER_HANDLE hPrinter)
Definition: printers.c:338
struct _WINSPOOL_DRIVER_INFO_1 WINSPOOL_DRIVER_INFO_1
DWORD _RpcGetSpoolFileInfo(WINSPOOL_PRINTER_HANDLE hPrinter, WINSPOOL_HANDLE hProcessHandle, DWORD Level, WINSPOOL_FILE_INFO_1 *pFileInfo, DWORD dwSize, DWORD *dwNeeded)
Definition: spoolfile.c:11
DWORDLONG dwlMinInboxDriverVerVersion
Definition: winspool.idl:182
struct _WINSPOOL_FORM_INFO_2 WINSPOOL_FORM_INFO_2
struct _WINSPOOL_SYSTEMTIME_CONTAINER WINSPOOL_SYSTEMTIME_CONTAINER
WINSPOOL_PROVIDOR_INFO_2 * pProvidorInfo2
Definition: winspool.idl:729
WINSPOOL_V2_NOTIFY_INFO * pInfo
Definition: winspool.idl:833
LPCSTR pText
Definition: txtscale.cpp:79
struct _WINSPOOL_DRIVER_INFO_8 WINSPOOL_DRIVER_INFO_8
DWORD _RpcAddPort(WINSPOOL_HANDLE pName, ULONG_PTR hWnd, WCHAR *pMonitorName)
Definition: ports.c:12
void * WINSPOOL_GDI_HANDLE
Definition: winspool.idl:13
WINSPOOL_FORM_INFO_1 * pFormInfo1
Definition: winspool.idl:620
struct _WINSPOOL_JOB_INFO_2 WINSPOOL_JOB_INFO_2
DWORD _RpcFindNextPrinterChangeNotification(VOID)
Definition: notifications.c:25
FxWmiProvider * pProvider
Definition: fxwmiapi.cpp:54
DWORD _RpcAddPerMachineConnection(WINSPOOL_HANDLE pServer, const WCHAR *pPrinterName, const WCHAR *pPrintServer, const WCHAR *pProvider)
Definition: rpcstubs.c:96
struct _WINSPOOL_PRINTER_INFO_9 WINSPOOL_PRINTER_INFO_9
DWORD _RpcRouterReplyPrinter(WINSPOOL_PRINTER_HANDLE hNotify, DWORD fdwFlags, DWORD cbBuffer, BYTE *pBuffer)
Definition: notifications.c:74
struct _WINSPOOL_PORT_INFO_1 WINSPOOL_PORT_INFO_1
DWORD _RpcEndDocPrinter(WINSPOOL_PRINTER_HANDLE hPrinter)
Definition: printers.c:85
DWORD _RpcSetPrinterDataEx(WINSPOOL_PRINTER_HANDLE hPrinter, const WCHAR *pKeyName, const WCHAR *pValueName, DWORD Type, BYTE *pData, DWORD cbData)
Definition: printerdata.c:84
WINSPOOL_DEVMODE_CONTAINER DevMode
Definition: winspool.idl:805
WINSPOOL_DRIVER_INFO_2 * Level2
Definition: winspool.idl:599
WINSPOOL_BINARY_CONTAINER biData
Definition: winspool.idl:529
DWORD _RpcResetPrinter(WINSPOOL_PRINTER_HANDLE hPrinter, WCHAR *pDatatype, WINSPOOL_DEVMODE_CONTAINER *pDevModeContainer)
Definition: printers.c:244
DWORD _RpcDeletePrinter(WINSPOOL_PRINTER_HANDLE hPrinter)
Definition: printers.c:66
union _WINSPOOL_PROVIDOR_CONTAINER::@3418 ProvidorInfo
struct _WINSPOOL_PRINTER_INFO_6 WINSPOOL_PRINTER_INFO_6
WINSPOOL_V2_NOTIFY_INFO_DATA aData[]
Definition: winspool.idl:826
struct _WINSPOOL_BIDI_RESPONSE_CONTAINER WINSPOOL_BIDI_RESPONSE_CONTAINER
*nSize LPSTR _Inout_ LPDWORD nSize
Definition: winbase.h:2037
WINSPOOL_BIDI_DATA data
Definition: winspool.idl:539
WINSPOOL_HANDLE hSpoolFileHandle
Definition: winspool.idl:840
struct _WINSPOOL_DRIVER_INFO_6 WINSPOOL_DRIVER_INFO_6
WINSPOOL_PRINTER_INFO_7 * pPrinterInfo7
Definition: winspool.idl:710
HWND hWnd
Definition: settings.c:17
DWORD _RpcDeleteMonitor(WINSPOOL_HANDLE pName, WCHAR *pEnvironment, WCHAR *pMonitorName)
Definition: monitors.c:31
union _WINSPOOL_JOB_CONTAINER::@3414 JobInfo
DWORD _RpcEnumPrinters(DWORD Flags, WINSPOOL_HANDLE Name, DWORD Level, BYTE *pPrinterEnum, DWORD cbBuf, DWORD *pcbNeeded, DWORD *pcReturned)
Definition: printers.c:123
struct _WINSPOOL_V2_NOTIFY_OPTIONS WINSPOOL_V2_NOTIFY_OPTIONS
DWORD _RpcEnumPrinterKey(WINSPOOL_PRINTER_HANDLE hPrinter, const WCHAR *pKeyName, WCHAR *pSubkey, DWORD cbSubkey, DWORD *pcbSubkey)
Definition: printerdata.c:39
FILETIME ftMinInboxDriverVerDate
Definition: winspool.idl:181
WINSPOOL_PORT_INFO_1 * pPortInfo1
Definition: winspool.idl:670
_IRQL_requires_same_ typedef _In_ ULONG _In_ UCHAR Level
Definition: wmitypes.h:55
DWORD _RpcGetPrinterDriver2(WINSPOOL_PRINTER_HANDLE hPrinter, WCHAR *pEnvironment, DWORD Level, BYTE *pDriver, DWORD cbBuf, DWORD *pcbNeeded, DWORD dwClientMajorVersion, DWORD dwClientMinorVersion, DWORD *pdwServerMaxVersion, DWORD *pdwServerMinVersion)
DWORD _RpcRouterFindFirstPrinterChangeNotificationOld(VOID)
Definition: notifications.c:60
struct _WINSPOOL_STRING_CONTAINER WINSPOOL_STRING_CONTAINER
DWORD _RpcAddDriverCatalog(VOID)
Definition: rpcstubs.c:131
struct _WINSPOOL_FILE_INFO_CONTAINER WINSPOOL_FILE_INFO_CONTAINER
DWORD _RpcSetPrinterData(WINSPOOL_PRINTER_HANDLE hPrinter, WCHAR *pValueName, DWORD Type, BYTE *pData, DWORD cbData)
Definition: printerdata.c:78
DWORD _RpcSetAllocFailCount(VOID)
Definition: rpcstubs.c:68
DWORD _RpcSpoolerInit(VOID)
Definition: init.c:11
Definition: shell.h:41
struct _WINSPOOL_PRINTER_INFO_8 WINSPOOL_PRINTER_INFO_8
struct _WINSPOOL_V2_NOTIFY_OPTIONS_TYPE WINSPOOL_V2_NOTIFY_OPTIONS_TYPE
ULONG_PTR pSecurityDescriptor
Definition: winspool.idl:278
DWORD _RpcDeletePerMachineConnection(WINSPOOL_HANDLE pServer, const WCHAR *pPrinterName)
Definition: rpcstubs.c:103
struct _WINSPOOL_PROVIDOR_INFO_1 WINSPOOL_PROVIDOR_INFO_1
WINSPOOL_PRINTER_INFO_6 * pPrinterInfo6
Definition: winspool.idl:708
struct _WINSPOOL_RECTL WINSPOOL_RECTL
int32_t INT
Definition: typedefs.h:58
DWORD _RpcAddPortEx(WINSPOOL_HANDLE pName, WINSPOOL_PORT_CONTAINER *pPortContainer, WINSPOOL_PORT_VAR_CONTAINER *pPortVarContainer, WCHAR *pMonitorName)
Definition: ports.c:33
struct _WINSPOOL_PRINTER_INFO_7 WINSPOOL_PRINTER_INFO_7
struct _WINSPOOL_DEVMODE_CONTAINER WINSPOOL_DEVMODE_CONTAINER
DWORD _RpcSetForm(WINSPOOL_PRINTER_HANDLE hPrinter, WCHAR *pFormName, WINSPOOL_FORM_CONTAINER *pFormInfoContainer)
Definition: forms.c:114
DWORD _RpcRemoteFindFirstPrinterChangeNotification(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD fdwFlags, DWORD fdwOptions, WCHAR *pszLocalMachine, DWORD dwPrinterLocal, DWORD cbBuffer, BYTE *pBuffer)
Definition: notifications.c:32
union _WINSPOOL_DRIVER_CONTAINER::@3412 DriverInfo
struct _WINSPOOL_PORT_INFO_2 WINSPOOL_PORT_INFO_2
union _WINSPOOL_DOC_INFO_CONTAINER::@3411 DocInfo
DWORD _RpcDeleteForm(WINSPOOL_PRINTER_HANDLE hPrinter, WCHAR *pFormName)
Definition: forms.c:31
WINSPOOL_BIDI_REQUEST_DATA aData[]
Definition: winspool.idl:557
DWORD _RpcFlushPrinter(WINSPOOL_PRINTER_HANDLE hPrinter, BYTE *pBuf, DWORD cbBuf, DWORD *pcWritten, DWORD cSleep)
Definition: printers.c:155
uint32_t ULONG_PTR
Definition: typedefs.h:65
WINSPOOL_SIZEL Size
Definition: winspool.idl:190
DWORD _RpcCommitSpoolData2(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD dwProcessId, DWORD cbCommit, DWORD Level, WINSPOOL_FILE_INFO_CONTAINER *pFileInfoContainer)
Definition: spoolfile.c:77
WINSPOOL_PROVIDOR_INFO_1 * pProvidorInfo1
Definition: winspool.idl:727
const WCHAR * pName
Definition: winspool.idl:198
DWORD _RpcAddPrinter(WINSPOOL_HANDLE pName, WINSPOOL_PRINTER_CONTAINER *pPrinterContainer, WINSPOOL_DEVMODE_CONTAINER *pDevModeContainer, WINSPOOL_SECURITY_CONTAINER *pSecurityContainer, WINSPOOL_PRINTER_HANDLE *pHandle)
Definition: printers.c:31
DWORD _RpcStartDocPrinter(WINSPOOL_PRINTER_HANDLE hPrinter, WINSPOOL_DOC_INFO_CONTAINER *pDocInfoContainer, DWORD *pJobId)
Definition: printers.c:319
struct _WINSPOOL_PRINTER_INFO_5 WINSPOOL_PRINTER_INFO_5
WINSPOOL_PRINTER_INFO_2 * pPrinterInfo2
Definition: winspool.idl:700
namespace GUID const ADDRINFOEXW ADDRINFOEXW struct timeval OVERLAPPED LPLOOKUPSERVICE_COMPLETION_ROUTINE HANDLE * handle
Definition: sock.c:82
WINSPOOL_SIZEL Size
Definition: winspool.idl:199
DWORD _RpcAddPrinterConnection(WINSPOOL_HANDLE pName)
Definition: rpcstubs.c:32
WINSPOOL_PRINTER_INFO_3 * pPrinterInfo3
Definition: winspool.idl:702
DWORD _RpcAddPrinterDriver(WINSPOOL_HANDLE pName, WINSPOOL_DRIVER_CONTAINER *pDriverContainer)
ULONG_PTR pSecurityDescriptor
Definition: winspool.idl:395
WINSPOOL_BIDI_DATA data
Definition: winspool.idl:548
unsigned int BOOL
Definition: ntddk_ex.h:94
struct _WINSPOOL_FORM_CONTAINER WINSPOOL_FORM_CONTAINER
WINSPOOL_PRINTER_INFO_1 * pPrinterInfo1
Definition: winspool.idl:698
union _WINSPOOL_BIDI_DATA::@3410 u
long LONG
Definition: pedump.c:60
DWORD _RpcEnumPrinterDataEx(WINSPOOL_PRINTER_HANDLE hPrinter, const WCHAR *pKeyName, BYTE *pEnumValues, DWORD cbEnumValues, DWORD *pcbEnumValues, DWORD *pnEnumValues)
Definition: printerdata.c:46
struct _WINSPOOL_PRINTER_INFO_3 WINSPOOL_PRINTER_INFO_3
WORD WINSPOOL_LANGID
Definition: winspool.idl:21
WINSPOOL_PRINTER_INFO_9 * pPrinterInfo9
Definition: winspool.idl:714
WINSPOOL_JOB_INFO_3 * Level3
Definition: winspool.idl:639
struct _WINSPOOL_DRIVER_CONTAINER WINSPOOL_DRIVER_CONTAINER
WINSPOOL_PORT_INFO_2 * pPortInfo2
Definition: winspool.idl:672
DWORD _RpcEndPagePrinter(WINSPOOL_PRINTER_HANDLE hPrinter)
Definition: printers.c:104
DWORD _RpcSetJob(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD JobId, WINSPOOL_JOB_CONTAINER *pJobContainer, DWORD Command)
Definition: jobs.c:129
struct _WINSPOOL_BIDI_DATA WINSPOOL_BIDI_DATA
WINSPOOL_MONITOR_INFO_1 * pMonitorInfo1
Definition: winspool.idl:654
DWORD _RpcXcvData(WINSPOOL_PRINTER_HANDLE hXcv, const WCHAR *pszDataName, BYTE *pInputData, DWORD cbInputData, BYTE *pOutputData, DWORD cbOutputData, DWORD *pcbOutputNeeded, DWORD *pdwStatus)
Definition: xcv.c:11
struct _WINSPOOL_DOC_INFO_1 WINSPOOL_DOC_INFO_1
WINSPOOL_DRIVER_INFO_8 * Level8
Definition: winspool.idl:607
PVOID pBuffer
static const WCHAR version[]
Definition: asmname.c:66
DWORD _RpcGetJob(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD JobId, DWORD Level, BYTE *pJob, DWORD cbBuf, DWORD *pcbNeeded)
Definition: jobs.c:78
WINSPOOL_JOB_INFO_2 * Level2
Definition: winspool.idl:637
WINSPOOL_DRIVER_INFO_6 * Level6
Definition: winspool.idl:605
WINSPOOL_JOB_INFO_1 * Level1
Definition: winspool.idl:635
WINSPOOL_MONITOR_INFO_2 * pMonitorInfo2
Definition: winspool.idl:656
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
union _WINSPOOL_V2_NOTIFY_INFO_DATA_DATA WINSPOOL_V2_NOTIFY_INFO_DATA_DATA
struct _WINSPOOL_V2_NOTIFY_INFO_DATA WINSPOOL_V2_NOTIFY_INFO_DATA
struct _WINSPOOL_PORT_INFO_3 WINSPOOL_PORT_INFO_3
DWORD _RpcAddPrintProcessor(WINSPOOL_HANDLE pName, WCHAR *pEnvironment, WCHAR *pPathName, WCHAR *pPrintProcessorName)
WINSPOOL_BIDI_RESPONSE_DATA aData[]
Definition: winspool.idl:566
DWORD _RpcGetPrinterData(WINSPOOL_PRINTER_HANDLE hPrinter, WCHAR *pValueName, DWORD *pType, BYTE *pData, DWORD nSize, DWORD *pcbNeeded)
Definition: printerdata.c:53
WINSPOOL_JOB_INFO_4 * Level4
Definition: winspool.idl:641
DWORD _RpcSetPort(WINSPOOL_HANDLE pName, WCHAR *pPortName, WINSPOOL_PORT_CONTAINER *pPortContainer)
Definition: ports.c:144
DWORD _RpcGetSpoolFileInfo2(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD dwProcessId, DWORD Level, WINSPOOL_FILE_INFO_CONTAINER *pFileInfoContainer)
Definition: spoolfile.c:49
struct _WINSPOOL_JOB_INFO_4 WINSPOOL_JOB_INFO_4
DWORD _RpcPrinterMessageBox(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD Error, ULONG_PTR hWnd, WCHAR *pText, WCHAR *pCaption, DWORD dwType)
Definition: rpcstubs.c:49
DWORD _RpcDeletePrinterIC(WINSPOOL_GDI_HANDLE *phPrinterIC)
Definition: rpcstubs.c:25
WINSPOOL_V2_NOTIFY_OPTIONS_TYPE * pTypes
Definition: winspool.idl:792
WINSPOOL_PORT_INFO_3 * pPortInfo3
Definition: winspool.idl:674
DWORD _RpcEnumPrintProcessorDatatypes(WINSPOOL_HANDLE pName, WCHAR *pPrintProcessorName, DWORD Level, BYTE *pDatatypes, DWORD cbBuf, DWORD *pcbNeeded, DWORD *pcReturned)
ULONG_PTR pSecurityDescriptor
Definition: winspool.idl:242
DWORD _RpcRemoteFindFirstPrinterChangeNotificationEx(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD fdwFlags, DWORD fdwOptions, WCHAR *pszLocalMachine, DWORD dwPrinterLocal, WINSPOOL_V2_NOTIFY_OPTIONS *pOptions)
Definition: notifications.c:39
DWORD _RpcReplyClosePrinter(WINSPOOL_PRINTER_HANDLE *phNotify)
Definition: notifications.c:46
WINSPOOL_BIDI_TYPE
Definition: winspool.idl:23
WINSPOOL_SPLCLIENT_INFO_2 * pNotUsed1
Definition: winspool.idl:751
DWORD _RpcAddForm(WINSPOOL_PRINTER_HANDLE hPrinter, WINSPOOL_FORM_CONTAINER *pFormInfoContainer)
Definition: forms.c:12
const WCHAR * pKeyword
Definition: winspool.idl:201
struct _WINSPOOL_SPLCLIENT_INFO_3 WINSPOOL_SPLCLIENT_INFO_3
SYSTEMTIME Submitted
Definition: winspool.idl:286
WINSPOOL_FORM_INFO_2 * pFormInfo2
Definition: winspool.idl:622
WINSPOOL_PRINTER_INFO_5 * pPrinterInfo5
Definition: winspool.idl:706
DWORD _RpcPlayGdiScriptOnPrinterIC(WINSPOOL_GDI_HANDLE hPrinterIC, BYTE *pIn, DWORD cIn, BYTE *pOut, DWORD cOut, DWORD ul)
Definition: rpcstubs.c:18
DWORD _RpcAddPrintProvidor(WINSPOOL_HANDLE pName, WINSPOOL_PROVIDOR_CONTAINER *pProvidorContainer)
WINSPOOL_SPLCLIENT_INFO_1 * pClientInfo1
Definition: winspool.idl:749
struct _WINSPOOL_SPLCLIENT_INFO_2 WINSPOOL_SPLCLIENT_INFO_2
FxDriver * pDriver
struct _WINSPOOL_JOB_INFO_1 WINSPOOL_JOB_INFO_1
static LPSTR pName
Definition: security.c:75
WINSPOOL_SPLCLIENT_INFO_3 * pNotUsed2
Definition: winspool.idl:753
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
WINSPOOL_V2_NOTIFY_INFO_DATA_DATA Data
Definition: winspool.idl:817
struct _WINSPOOL_PRINTER_INFO_4 WINSPOOL_PRINTER_INFO_4
union _WINSPOOL_V2_UREPLY_PRINTER WINSPOOL_V2_UREPLY_PRINTER
__wchar_t WCHAR
Definition: xmlstorage.h:180
DWORD _RpcDeletePrinterKey(WINSPOOL_PRINTER_HANDLE hPrinter, const WCHAR *pKeyName)
Definition: printerdata.c:25
DWORD _RpcClientFindFirstPrinterChangeNotification(VOID)
Definition: notifications.c:11
DWORD _RpcClusterSplIsAlive(VOID)
Definition: rpcstubs.c:89
DWORD _RpcSplOpenPrinter(VOID)
Definition: rpcstubs.c:117
DWORD _RpcOpenPrinterEx(WINSPOOL_HANDLE pPrinterName, WINSPOOL_PRINTER_HANDLE *pHandle, WCHAR *pDatatype, WINSPOOL_DEVMODE_CONTAINER *pDevModeContainer, DWORD AccessRequired, WINSPOOL_SPLCLIENT_CONTAINER *pClientInfo)
Definition: printers.c:218
ncacn_np pointer_default(unique)] interface winspool
Definition: winspool.idl:865
DWORD _RpcScheduleJob(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD JobId)
Definition: jobs.c:110
DWORD _RpcEnumForms(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD Level, BYTE *pForm, DWORD cbBuf, DWORD *pcbNeeded, DWORD *pcReturned)
Definition: forms.c:50
DWORD _RpcWritePrinter(WINSPOOL_PRINTER_HANDLE hPrinter, BYTE *pBuf, DWORD cbBuf, DWORD *pcWritten)
Definition: printers.c:357
DWORD _RpcDeletePrinterDataEx(WINSPOOL_PRINTER_HANDLE hPrinter, const WCHAR *pKeyName, const WCHAR *pValueName)
Definition: printerdata.c:18
struct endpoint endpoint
Definition: nis.h:15
DWORD _RpcSendRecvBidiData(WINSPOOL_PRINTER_HANDLE hPrinter, const WCHAR *pAction, WINSPOOL_BIDI_REQUEST_CONTAINER *pReqData, WINSPOOL_BIDI_RESPONSE_CONTAINER **ppRespData)
Definition: rpcstubs.c:124
DWORD _RpcFindClosePrinterChangeNotification(VOID)
Definition: notifications.c:18
unsigned short WORD
Definition: ntddk_ex.h:93
Type
Definition: Type.h:6
static FILE * out
Definition: regtests2xml.c:44
union _WINSPOOL_MONITOR_CONTAINER::@3415 MonitorInfo
struct _WINSPOOL_MONITOR_INFO_2 WINSPOOL_MONITOR_INFO_2
const WCHAR * pDisplayName
Definition: winspool.idl:205
unsigned long DWORD
Definition: ntddk_ex.h:95
DWORD _RpcResetPrinterEx(WINSPOOL_PRINTER_HANDLE hPrinter, WCHAR *pDatatype, WINSPOOL_DEVMODE_CONTAINER *pDevModeContainer, DWORD dwFlags)
Definition: printers.c:251
WINSPOOL_PRINTER_INFO_STRESS * pPrinterInfoStress
Definition: winspool.idl:696
WINSPOOL_RECTL ImageableArea
Definition: winspool.idl:200
BOOL Error
Definition: chkdsk.c:66
DWORD _RpcReadPrinter(WINSPOOL_PRINTER_HANDLE hPrinter, BYTE *pBuf, DWORD cbBuf, DWORD *pcNoBytesRead)
Definition: printers.c:225
DWORD _RpcRouterRefreshPrinterChangeNotification(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD dwColor, WINSPOOL_V2_NOTIFY_OPTIONS *pOptions, WINSPOOL_V2_NOTIFY_INFO **ppInfo)
Definition: notifications.c:67
union _WINSPOOL_SPLCLIENT_CONTAINER::@3419 ClientInfo
WCHAR * pszzCoreDriverDependencies
Definition: winspool.idl:180
WINSPOOL_STRING_CONTAINER String
Definition: winspool.idl:799
DWORD _RpcDeletePrinterData(WINSPOOL_PRINTER_HANDLE hPrinter, WCHAR *pValueName)
Definition: printerdata.c:11
DWORD _RpcEnumPerMachineConnections(WINSPOOL_HANDLE pServer, BYTE *pPrinterEnum, DWORD cbBuf, DWORD *pcbNeeded, DWORD *pcReturned)
Definition: rpcstubs.c:110
struct _WINSPOOL_JOB_CONTAINER WINSPOOL_JOB_CONTAINER
struct _WINSPOOL_DRIVER_INFO_3 WINSPOOL_DRIVER_INFO_3
ULONG_PTR pSecurityDescriptor
Definition: winspool.idl:409
union _WINSPOOL_PRINTER_CONTAINER::@3417 PrinterInfo
struct _WINSPOOL_PRINTER_INFO_1 WINSPOOL_PRINTER_INFO_1
DWORD _RpcClusterSplClose(VOID)
Definition: rpcstubs.c:82
struct _WINSPOOL_PORT_INFO_FF WINSPOOL_PORT_INFO_FF
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1175
DWORD _RpcEnumJobs(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD FirstJob, DWORD NoJobs, DWORD Level, BYTE *pJob, DWORD cbBuf, DWORD *pcbNeeded, DWORD *pcReturned)
Definition: jobs.c:43
const WCHAR * pMuiDll
Definition: winspool.idl:203
DWORD _RpcOpenPrinter(WINSPOOL_HANDLE pPrinterName, WINSPOOL_PRINTER_HANDLE *phPrinter, WCHAR *pDatatype, WINSPOOL_DEVMODE_CONTAINER *pDevModeContainer, DWORD AccessRequired)
Definition: printers.c:194
WINSPOOL_DOC_INFO_1 * pDocInfo1
Definition: winspool.idl:577
DWORD _RpcEnumPrinterDrivers(WINSPOOL_HANDLE pName, WCHAR *pEnvironment, DWORD Level, BYTE *pDrivers, DWORD cbBuf, DWORD *pcbNeeded, DWORD *pcReturned)
struct _WINSPOOL_DRIVER_INFO_4 WINSPOOL_DRIVER_INFO_4
DWORD _RpcCloseSpoolFileHandle(WINSPOOL_PRINTER_HANDLE hPrinter)
Definition: spoolfile.c:104
WINSPOOL_PRINTER_INFO_8 * pPrinterInfo8
Definition: winspool.idl:712
struct _WINSPOOL_PROVIDOR_INFO_2 WINSPOOL_PROVIDOR_INFO_2
unsigned char BYTE
Definition: xxhash.c:193
struct _WINSPOOL_PRINTER_CONTAINER WINSPOOL_PRINTER_CONTAINER
DWORD _RpcEnumPrintProcessors(WINSPOOL_HANDLE pName, WCHAR *pEnvironment, DWORD Level, BYTE *pPrintProcessorInfo, DWORD cbBuf, DWORD *pcbNeeded, DWORD *pcReturned)
DWORD _RpcDeletePrintProcessor(WINSPOOL_HANDLE pName, WCHAR *pEnvironment, WCHAR *pPrintProcessorName)
char string[160]
Definition: util.h:11
GLenum GLint * range
Definition: glext.h:7539
struct _WINSPOOL_BIDI_RESPONSE_DATA WINSPOOL_BIDI_RESPONSE_DATA
DWORDLONG dwlDriverVersion
Definition: winspool.idl:144
struct _WINSPOOL_BIDI_REQUEST_DATA WINSPOOL_BIDI_REQUEST_DATA
struct _WINSPOOL_JOB_INFO_3 WINSPOOL_JOB_INFO_3
WINSPOOL_SECURITY_CONTAINER SecurityDescriptor
Definition: winspool.idl:807
DWORD _RpcAddPrinterEx(WINSPOOL_HANDLE pName, WINSPOOL_PRINTER_CONTAINER *pPrinterContainer, WINSPOOL_DEVMODE_CONTAINER *pDevModeContainer, WINSPOOL_SECURITY_CONTAINER *pSecurityContainer, WINSPOOL_SPLCLIENT_CONTAINER *pClientInfo, WINSPOOL_PRINTER_HANDLE *pHandle)
Definition: printers.c:38
struct _WINSPOOL_SECURITY_CONTAINER WINSPOOL_SECURITY_CONTAINER
struct _WINSPOOL_SPLCLIENT_INFO_1 WINSPOOL_SPLCLIENT_INFO_1
DWORD _RpcDeletePrintProvidor(WINSPOOL_HANDLE pName, WCHAR *pEnvironment, WCHAR *pPrintProviderName)
DWORD _RpcDeletePrinterDriver(WINSPOOL_HANDLE pName, WCHAR *pEnvironment, WCHAR *pDriverName)
DWORD _RpcGetPrinterDataEx(WINSPOOL_PRINTER_HANDLE hPrinter, const WCHAR *pKeyName, const WCHAR *pValueName, DWORD *pType, BYTE *pData, DWORD nSize, DWORD *pcbNeeded)
Definition: printerdata.c:59
struct _WINSPOOL_MONITOR_INFO_1 WINSPOOL_MONITOR_INFO_1
GLuint in
Definition: glext.h:9616
_In_ UINT _In_ DWORD _Out_ DWORD * pdwResult
Definition: ntgdi.h:248
_In_ DWORD _Out_ PDWORD pcbNeeded
Definition: winddi.h:3827
struct _WINSPOOL_SIZEL WINSPOOL_SIZEL
unsigned short USHORT
Definition: pedump.c:61
struct _WINSPOOL_PROVIDOR_CONTAINER WINSPOOL_PROVIDOR_CONTAINER
WINSPOOL_DRIVER_INFO_4 * Level4
Definition: winspool.idl:603
DWORD _RpcCreatePrinterIC(WINSPOOL_PRINTER_HANDLE hPrinter, WINSPOOL_GDI_HANDLE *pHandle, WINSPOOL_DEVMODE_CONTAINER *pDevModeContainer)
Definition: rpcstubs.c:11
SYSTEMTIME Submitted
Definition: winspool.idl:250
DWORD _RpcEnumPrinterData(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD dwIndex, WCHAR *pValueName, DWORD cbValueName, DWORD *pcbValueName, DWORD *pType, BYTE *pData, DWORD cbData, DWORD *pcbData)
Definition: printerdata.c:32
DWORD _RpcDeletePrinterConnection(WINSPOOL_HANDLE pName)
Definition: rpcstubs.c:39
DWORD _RpcDeletePrinterDriverEx(WINSPOOL_HANDLE pName, WCHAR *pEnvironment, WCHAR *pDriverName, DWORD dwDeleteFlag, DWORD dwVersionNum)
union _WINSPOOL_PORT_CONTAINER::@3416 PortInfo
struct _WINSPOOL_SPLCLIENT_CONTAINER WINSPOOL_SPLCLIENT_CONTAINER
__int3264 LONG_PTR
Definition: mstsclib_h.h:276
DWORD _RpcWaitForPrinterChange(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD Flags, DWORD *pFlags)
Definition: notifications.c:88
unsigned int UINT
Definition: ndis.h:50
struct _WINSPOOL_V2_NOTIFY_INFO WINSPOOL_V2_NOTIFY_INFO
struct _WINSPOOL_BIDI_REQUEST_CONTAINER WINSPOOL_BIDI_REQUEST_CONTAINER
DWORD _RpcClosePrinter(WINSPOOL_PRINTER_HANDLE *phPrinter)
Definition: printers.c:45
WINSPOOL_PRINTER_INFO_4 * pPrinterInfo4
Definition: winspool.idl:704
DWORDLONG dwlDriverVersion
Definition: winspool.idl:168
struct _WINSPOOL_PRINTER_INFO_STRESS WINSPOOL_PRINTER_INFO_STRESS
SYSTEMTIME Submitted
Definition: winspool.idl:224
struct _WINSPOOL_DOC_INFO_CONTAINER WINSPOOL_DOC_INFO_CONTAINER
struct _WINSPOOL_FORM_INFO_1 WINSPOOL_FORM_INFO_1
DWORD _RpcAbortPrinter(WINSPOOL_PRINTER_HANDLE hPrinter)
Definition: printers.c:12
unsigned long long DWORDLONG
Definition: intsafe.h:91
DWORD _RpcSetPrinter(WINSPOOL_PRINTER_HANDLE hPrinter, WINSPOOL_PRINTER_CONTAINER *pPrinterContainer, WINSPOOL_DEVMODE_CONTAINER *pDevModeContainer, WINSPOOL_SECURITY_CONTAINER *pSecurityContainer, DWORD Command)
Definition: printers.c:312
DWORD _RpcGetPrinterDriverDirectory(WINSPOOL_HANDLE pName, WCHAR *pEnvironment, DWORD Level, BYTE *pDriverDirectory, DWORD cbBuf, DWORD *pcbNeeded)
float FLOAT
Definition: typedefs.h:69
struct _WINSPOOL_DRIVER_INFO_2 WINSPOOL_DRIVER_INFO_2
_ForwardIter unique(_ForwardIter __first, _ForwardIter __last)
Definition: _algo.h:298
struct _WINSPOOL_PORT_CONTAINER WINSPOOL_PORT_CONTAINER
DWORD _RpcEnumPorts(WINSPOOL_HANDLE pName, DWORD Level, BYTE *pPort, DWORD cbBuf, DWORD *pcbNeeded, DWORD *pcReturned)
Definition: ports.c:112
WINSPOOL_RECTL ImageableArea
Definition: winspool.idl:191
union _WINSPOOL_FORM_CONTAINER::@3413 FormInfo
DWORD _RpcDeletePort(WINSPOOL_HANDLE pName, ULONG_PTR hWnd, WCHAR *pPortName)
Definition: ports.c:93
DWORD _RpcGetPrintProcessorDirectory(WINSPOOL_HANDLE pName, WCHAR *pEnvironment, DWORD Level, BYTE *pPrintProcessorDirectory, DWORD cbBuf, DWORD *pcbNeeded)
union _WINSPOOL_FILE_INFO_CONTAINER::@3420 FileInfo
static HANDLE hXcv
Definition: localmon.c:73
void * WINSPOOL_PRINTER_HANDLE
Definition: winspool.idl:14
unsigned long long UINT64
WINSPOOL_DRIVER_INFO_3 * Level3
Definition: winspool.idl:601
struct _WINSPOOL_BINARY_CONTAINER WINSPOOL_BINARY_CONTAINER
TW_UINT32 TW_UINT16 TW_UINT16 TW_MEMREF pData
Definition: twain.h:1827
DWORD _RpcEnumMonitors(WINSPOOL_HANDLE pName, DWORD Level, BYTE *pMonitor, DWORD cbBuf, DWORD *pcbNeeded, DWORD *pcReturned)
Definition: monitors.c:50
DWORD _RpcAddMonitor(WINSPOOL_HANDLE pName, WINSPOOL_MONITOR_CONTAINER *pMonitorContainer)
Definition: monitors.c:12
struct _WINSPOOL_FILE_INFO_1 WINSPOOL_FILE_INFO_1
DWORD _RpcAddPrinterDriverEx(WINSPOOL_HANDLE pName, WINSPOOL_DRIVER_CONTAINER *pDriverContainer, DWORD dwFileCopyFlags)
WINSPOOL_PORT_INFO_FF * pPortInfoFF
Definition: winspool.idl:676
DWORD _RpcCommitSpoolData(WINSPOOL_PRINTER_HANDLE hPrinter, WINSPOOL_HANDLE hProcessHandle, DWORD cbCommit, DWORD Level, WINSPOOL_FILE_INFO_1 *pFileInfo, DWORD dwSize, DWORD *dwNeeded)
Definition: spoolfile.c:30
WINSPOOL_TABLE_TYPE
Definition: winspool.idl:36
DWORD _RpcGetPrinterDriver(WINSPOOL_PRINTER_HANDLE hPrinter, WCHAR *pEnvironment, DWORD Level, BYTE *pDriver, DWORD cbBuf, DWORD *pcbNeeded)
DWORD _RpcReplyOpenPrinter(WINSPOOL_HANDLE pMachine, WINSPOOL_PRINTER_HANDLE *phPrinterNotify, DWORD dwPrinterRemote, DWORD dwType, DWORD cbBuffer, BYTE *pBuffer)
Definition: notifications.c:53
WINSPOOL_LANGID wLangID
Definition: winspool.idl:206
DWORD _RpcConfigurePort(WINSPOOL_HANDLE pName, ULONG_PTR hWnd, WCHAR *pPortName)
Definition: ports.c:74
DWORD _RpcGetPrinter(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD Level, BYTE *pPrinter, DWORD cbBuf, DWORD *pcbNeeded)
Definition: printers.c:162
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
Definition: env.c:54
WCHAR * WINSPOOL_HANDLE
Definition: winspool.idl:15
WINSPOOL_FILE_INFO_1 * pFileInfo1
Definition: winspool.idl:852
WINSPOOL_SYSTEMTIME_CONTAINER SystemTime
Definition: winspool.idl:803
DWORD _RpcGetForm(WINSPOOL_PRINTER_HANDLE hPrinter, WCHAR *pFormName, DWORD Level, BYTE *pForm, DWORD cbBuf, DWORD *pcbNeeded)
Definition: forms.c:82
_In_ DWORD _Out_writes_bytes_to_opt_ pcbData void _Inout_ DWORD * pcbData
Definition: wincrypt.h:4949
struct _WINSPOOL_MONITOR_CONTAINER WINSPOOL_MONITOR_CONTAINER
struct _WINSPOOL_PORT_VAR_CONTAINER WINSPOOL_PORT_VAR_CONTAINER
WINSPOOL_DRIVER_INFO_1 * pNotUsed
Definition: winspool.idl:597
DWORD _RpcAddJob(WINSPOOL_PRINTER_HANDLE hPrinter, DWORD Level, BYTE *pAddJob, DWORD cbBuf, DWORD *pcbNeeded)
Definition: jobs.c:12
DWORD _RpcClusterSplOpen(VOID)
Definition: rpcstubs.c:75