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.

77 lines
1.7 KiB

  1. class CNWCOMPATPrintQueue:INHERIT_TRACKING,
  2. public ISupportErrorInfo,
  3. public IADsPrintQueue,
  4. public IADsPrintQueueOperations,
  5. public IADsPropertyList,
  6. public CCoreADsObject
  7. {
  8. public:
  9. /* IUnknown methods */
  10. STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID FAR* ppvObj);
  11. DECLARE_STD_REFCOUNTING;
  12. DECLARE_IDispatch_METHODS;
  13. DECLARE_ISupportErrorInfo_METHODS;
  14. DECLARE_IADs_METHODS;
  15. DECLARE_IADsPrintQueue_METHODS;
  16. DECLARE_IADsPrintQueueOperations_METHODS;
  17. DECLARE_IADsPropertyList_METHODS;
  18. CNWCOMPATPrintQueue();
  19. ~CNWCOMPATPrintQueue();
  20. static
  21. HRESULT
  22. CNWCOMPATPrintQueue::CreatePrintQueue(
  23. LPTSTR lpszADsParent,
  24. LPTSTR pszPrinterName,
  25. DWORD dwObjectState,
  26. REFIID riid,
  27. LPVOID * ppvoid
  28. );
  29. static
  30. HRESULT
  31. CNWCOMPATPrintQueue::AllocatePrintQueueObject(
  32. CNWCOMPATPrintQueue FAR * FAR * ppPrintQueue
  33. );
  34. protected:
  35. STDMETHOD(GetInfo)(
  36. THIS_ BOOL fExplicit,
  37. DWORD dwPropertyID
  38. );
  39. HRESULT
  40. CNWCOMPATPrintQueue::UnMarshall_GeneralInfo(
  41. LPPRINTER_INFO_2 lpPrinterInfo2,
  42. BOOL fExplicit
  43. );
  44. HRESULT
  45. CNWCOMPATPrintQueue::UnMarshall_Operation(
  46. LPPRINTER_INFO_2 lpPrinterInfo2,
  47. BOOL fExplicit
  48. );
  49. HRESULT
  50. CNWCOMPATPrintQueue::MarshallAndSet(
  51. HANDLE hPrinter,
  52. LPPRINTER_INFO_2 lpPrinterInfo2
  53. );
  54. WCHAR _szUncPrinterName[MAX_PATH];
  55. CAggregatorDispMgr * _pDispMgr;
  56. CADsExtMgr FAR * _pExtMgr;
  57. CPropertyCache * _pPropertyCache;
  58. };