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.

56 lines
1.5 KiB

  1. // prturl.h : Declaration of the Cprturl
  2. #ifndef __PRTURL_H_
  3. #define __PRTURL_H_
  4. /////////////////////////////////////////////////////////////////////////////
  5. // Cprturl
  6. class ATL_NO_VTABLE Cprturl :
  7. public CComObjectRootEx<CComMultiThreadModel>,
  8. public CComCoClass<Cprturl, &CLSID_prturl>,
  9. public ISupportErrorInfoImpl<&IID_Iprturl>,
  10. public IDispatchImpl<Iprturl, &IID_Iprturl, &LIBID_OLEPRNLib>
  11. {
  12. public:
  13. Cprturl()
  14. {
  15. }
  16. public:
  17. DECLARE_REGISTRY_RESOURCEID(IDR_PRTURL)
  18. //DECLARE_GET_CONTROLLING_UNKNOWN()
  19. BEGIN_COM_MAP(Cprturl)
  20. COM_INTERFACE_ENTRY(Iprturl)
  21. COM_INTERFACE_ENTRY(IDispatch)
  22. COM_INTERFACE_ENTRY(ISupportErrorInfo)
  23. END_COM_MAP()
  24. // Iprturl
  25. #ifndef WIN9X
  26. private:
  27. HRESULT PrivateGetPrinterData(LPTSTR strPrnName, LPTSTR pszKey, LPTSTR pszValueName, BSTR * pVal);
  28. HRESULT PrivateGetSupportValue (LPTSTR pValueName, BSTR * pVal);
  29. public:
  30. STDMETHOD(get_SupportLinkName)(/*[out, retval]*/ BSTR *pVal);
  31. STDMETHOD(get_SupportLink)(/*[out, retval]*/ BSTR *pVal);
  32. STDMETHOD(put_PrinterName)(/* [in] */ BSTR newVal);
  33. STDMETHOD(get_PrinterWebURL)(/*[out, retval]*/ BSTR *pVal);
  34. STDMETHOD(get_PrinterOemURL)(/*[out, retval]*/ BSTR *pVal);
  35. STDMETHOD(get_PrinterOemName)(/*[out, retval]*/ BSTR *pVal);
  36. #endif
  37. STDMETHOD(get_ClientInfo)(/*[out, retval]*/ long *lpdwInfo);
  38. #ifndef WIN9X
  39. private:
  40. CAutoPtrBSTR m_spbstrPrinterWebURL;
  41. CAutoPtrBSTR m_spbstrPrinterOemURL;
  42. CAutoPtrBSTR m_spbstrPrinterOemName;
  43. #endif
  44. };
  45. #endif //__PRTURL_H_