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.

71 lines
1.8 KiB

  1. /*++
  2. *
  3. * WOW v1.0
  4. *
  5. * Copyright (c) 1991, Microsoft Corporation
  6. *
  7. * WSPOOL.H
  8. * WOW32 printer spooler support routines
  9. *
  10. * These routines help a Win 3.0 task to use the print spooler apis. These
  11. * apis were exposed by DDK in Win 3.1.
  12. *
  13. * History:
  14. * Created 1-July-1993 by Chandan Chauhan (ChandanC)
  15. *
  16. --*/
  17. ULONG FASTCALL WG32OpenJob (PVDMFRAME pFrame);
  18. ULONG FASTCALL WG32StartSpoolPage (PVDMFRAME pFrame);
  19. ULONG FASTCALL WG32EndSpoolPage (PVDMFRAME pFrame);
  20. ULONG FASTCALL WG32CloseJob (PVDMFRAME pFrame);
  21. ULONG FASTCALL WG32WriteSpool (PVDMFRAME pFrame);
  22. ULONG FASTCALL WG32DeleteJob (PVDMFRAME pFrame);
  23. ULONG FASTCALL WG32SpoolFile (PVDMFRAME pFrame);
  24. typedef struct _tagWOWSpool {
  25. HANDLE hFile;
  26. HANDLE hPrinter;
  27. BOOL fOK;
  28. WORD prn16;
  29. } WOWSPOOL;
  30. typedef struct _DLLENTRYPOINTS {
  31. char *name;
  32. ULONG (*lpfn)();
  33. } DLLENTRYPOINTS;
  34. extern DLLENTRYPOINTS spoolerapis[];
  35. #define WOW_SPOOLERAPI_COUNT 15
  36. #define WOW_EXTDEVICEMODE 0
  37. #define WOW_DEVICEMODE 1
  38. #define WOW_DEVICECAPABILITIES 2
  39. #define WOW_OpenPrinterA 3
  40. #define WOW_StartDocPrinterA 4
  41. #define WOW_StartPagePrinter 5
  42. #define WOW_EndPagePrinter 6
  43. #define WOW_EndDocPrinter 7
  44. #define WOW_ClosePrinter 8
  45. #define WOW_WritePrinter 9
  46. #define WOW_DeletePrinter 10
  47. #define WOW_GetPrinterDriverDirectory 11
  48. #define WOW_AddPrinter 12
  49. #define WOW_AddPrinterDriver 13
  50. #define WOW_AddPortEx 14
  51. WORD GetPrn16(HANDLE h32);
  52. HANDLE Prn32(WORD h16);
  53. VOID FreePrn (WORD h16);
  54. BOOL GetDriverName (char *psz, char *szDriver);
  55. BOOL LoadLibraryAndGetProcAddresses(char *name, DLLENTRYPOINTS *p, int i);
  56. #ifdef i386
  57. HINSTANCE SafeLoadLibrary(char *name);
  58. #else
  59. #define SafeLoadLibrary(name) LoadLibrary(name)
  60. #endif