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.

90 lines
1.9 KiB

  1. class CPropertyCache;
  2. class CNWCOMPATPrintJob: INHERIT_TRACKING,
  3. public ISupportErrorInfo,
  4. public IADsPrintJob,
  5. public IADsPrintJobOperations,
  6. public IADsPropertyList,
  7. public CCoreADsObject
  8. {
  9. friend class CNWCOMPATFSPrintJobGeneralInfo;
  10. friend class CNWCOMPATFSPrintJobOperation;
  11. public:
  12. /* IUnknown methods */
  13. STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj) ;
  14. DECLARE_STD_REFCOUNTING;
  15. DECLARE_IDispatch_METHODS;
  16. DECLARE_ISupportErrorInfo_METHODS;
  17. DECLARE_IADs_METHODS;
  18. DECLARE_IADsPropertyList_METHODS;
  19. DECLARE_IADsPrintJob_METHODS;
  20. DECLARE_IADsPrintJobOperations_METHODS;
  21. CNWCOMPATPrintJob::CNWCOMPATPrintJob();
  22. CNWCOMPATPrintJob::~CNWCOMPATPrintJob();
  23. static
  24. HRESULT
  25. CreatePrintJob(
  26. LPTSTR pszPrinterPath,
  27. LONG lJobId,
  28. DWORD dwObjectState,
  29. REFIID riid,
  30. LPVOID *ppvoid
  31. );
  32. static
  33. HRESULT
  34. CNWCOMPATPrintJob::AllocatePrintJobObject(
  35. CNWCOMPATPrintJob ** ppPrintJob
  36. );
  37. protected:
  38. STDMETHODIMP
  39. CNWCOMPATPrintJob::CreateObject();
  40. STDMETHOD(GetInfo)(
  41. THIS_ BOOL fExplicit,
  42. DWORD dwPropertyID
  43. );
  44. HRESULT
  45. CNWCOMPATPrintJob::UnMarshall_GeneralInfo(
  46. LPJOB_INFO_2 lpJobInfo2,
  47. BOOL fExplicit
  48. );
  49. HRESULT
  50. CNWCOMPATPrintJob::UnMarshall_Operation(
  51. LPJOB_INFO_2 lpJobInfo2,
  52. BOOL fExplicit
  53. );
  54. HRESULT
  55. CNWCOMPATPrintJob::MarshallAndSet(
  56. HANDLE hPrinter,
  57. LPJOB_INFO_2 lpJobInfo2
  58. );
  59. CNWCOMPATFSPrintJobGeneralInfo *_pGenInfo;
  60. CNWCOMPATFSPrintJobOperation *_pOperation;
  61. CAggregatorDispMgr * _pDispMgr;
  62. CADsExtMgr FAR * _pExtMgr;
  63. LONG _lJobId;
  64. CPropertyCache *_pPropertyCache;
  65. LPTSTR _pszPrinterPath;
  66. LONG _lStatus;
  67. };