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.

93 lines
2.0 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. NW_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. CCredentials &Credentials,
  29. DWORD dwObjectState,
  30. REFIID riid,
  31. LPVOID *ppvoid
  32. );
  33. static
  34. HRESULT
  35. CNWCOMPATPrintJob::AllocatePrintJobObject(
  36. CNWCOMPATPrintJob ** ppPrintJob
  37. );
  38. protected:
  39. STDMETHODIMP
  40. CNWCOMPATPrintJob::CreateObject();
  41. STDMETHOD(GetInfo)(
  42. THIS_ BOOL fExplicit,
  43. DWORD dwPropertyID
  44. );
  45. HRESULT
  46. CNWCOMPATPrintJob::UnMarshall_GeneralInfo(
  47. LPJOB_INFO_2 lpJobInfo2,
  48. BOOL fExplicit
  49. );
  50. HRESULT
  51. CNWCOMPATPrintJob::UnMarshall_Operation(
  52. LPJOB_INFO_2 lpJobInfo2,
  53. BOOL fExplicit
  54. );
  55. HRESULT
  56. CNWCOMPATPrintJob::MarshallAndSet(
  57. HANDLE hPrinter,
  58. LPJOB_INFO_2 lpJobInfo2
  59. );
  60. CNWCOMPATFSPrintJobGeneralInfo *_pGenInfo;
  61. CNWCOMPATFSPrintJobOperation *_pOperation;
  62. CDispatchMgr * _pDispMgr;
  63. LONG _lJobId;
  64. CPropertyCache *_pPropertyCache;
  65. LPTSTR _pszPrinterPath;
  66. LONG _lStatus;
  67. CCredentials _Credentials;
  68. NWCONN_HANDLE _hConn;
  69. };