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.

83 lines
2.1 KiB

  1. /*++
  2. Copyright (c) 1992,1993 Microsoft Corporation
  3. Module Name:
  4. psprint.h
  5. Abstract:
  6. This module is the header file for psprint, which is the print processor
  7. we expose to the Win32 spooler. This is currently the ONLY way jobs make
  8. it into the pstodib component.
  9. Author:
  10. James Bratsanos (v-jimbr) 8-Dec-1992
  11. --*/
  12. // Define the name of the executable which will actually be responsible
  13. // for calling into the PSTODIB dll and image a postscript job.
  14. //
  15. #define PSEXE_STRING TEXT("sfmpsexe")
  16. // The datatype to publish to the Win32 Spool subsystem, so the Win32 spooler
  17. // can match jobs submitted by macprint to us
  18. //
  19. #define PSTODIB_DATATYPE TEXT("PSCRIPT1")
  20. // Misc strings used to form names, including the name of the shared memory
  21. // area we pass to the exe we start
  22. //
  23. #define PSTODIB_STRING TEXT("PSTODIB_")
  24. #define PSTODIB_EVENT_STRING L"_CONTROL"
  25. typedef struct _PRINTPROCESSORDATA {
  26. DWORD signature;
  27. DWORD cb;
  28. DWORD fsStatus;
  29. HANDLE semPaused;
  30. LPTSTR pPrinterName;
  31. HANDLE hPrinter;
  32. LPTSTR pDocument;
  33. LPTSTR pDatatype;
  34. LPTSTR pPrintDocumentDocName;
  35. LPTSTR pParameters;
  36. LPWSTR pControlName;
  37. DWORD JobId;
  38. LPDEVMODE pDevMode;
  39. DWORD dwTotDevmodeSize;
  40. PPSPRINT_SHARED_MEMORY pShared;
  41. HANDLE hShared;
  42. } PRINTPROCESSORDATA, *PPRINTPROCESSORDATA;
  43. #define PRINTPROCESSORDATA_SIGNATURE 0x5051 /* 'QP' is the signature value */
  44. /* Define flags for fsStatus field */
  45. #define PRINTPROCESSOR_ABORTED 0x0001
  46. #define PRINTPROCESSOR_PAUSED 0x0002
  47. #define PRINTPROCESSOR_CLOSED 0x0004
  48. #define PRINTPROCESSOR_SHMEM_DEF 0x0008
  49. #define PRINTPROCESSOR_RESERVED 0xFFF8
  50. #define LOC_DWORD_ALIGN(x) ( (x+3) & ~(0x03) )
  51. LPTSTR AllocStringAndCopy( LPTSTR lpSrc );
  52. VOID PsLocalFree( IN LPVOID lpPtr );
  53. VOID GenerateSharedMemoryInfo(IN PPRINTPROCESSORDATA pData,IN LPVOID lpPtr);
  54. PPRINTPROCESSORDATA ValidateHandle(HANDLE hQProc);
  55. VOID DbgPsPrint(PTCHAR ptchFormat, ...);
  56. VOID PsPrintLogEventAndIncludeLastError(IN DWORD dwErrorEvent,IN BOOL bError );
  57.