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.

91 lines
2.5 KiB

  1. /*++
  2. Copyright (c) 1997 Microsoft Corporation
  3. Module Name:
  4. rtsrc.h
  5. Abstract:
  6. Header file for IRoutingSource interface
  7. Author:
  8. Fei Su (feisu) 9/22/97 Created.
  9. Revision History:
  10. --*/
  11. class CRoutingSource :
  12. public CComDualImpl<IRoutingSource, &IID_IRoutingSource, &LIBID_SMTPADMLib>,
  13. public ISupportErrorInfo,
  14. public CComObjectRoot
  15. {
  16. public:
  17. CRoutingSource() : m_dwFC(0) {}
  18. virtual ~CRoutingSource(){}
  19. BEGIN_COM_MAP(CRoutingSource)
  20. COM_INTERFACE_ENTRY(IDispatch)
  21. COM_INTERFACE_ENTRY(IRoutingSource)
  22. COM_INTERFACE_ENTRY(ISupportErrorInfo)
  23. END_COM_MAP()
  24. /*
  25. // IUnknown methods
  26. STDMETHOD_(ULONG, AddRef) ();
  27. STDMETHOD_(ULONG, Release) ();
  28. STDMETHOD(QueryInterface)(REFIID riid, LPVOID FAR* ppvObj) ;
  29. */
  30. // ISupportsErrorInfo
  31. STDMETHOD(InterfaceSupportsErrorInfo)(REFIID riid);
  32. // IRoutingSource properties:
  33. STDMETHODIMP get_Type ( BSTR * pstrType );
  34. STDMETHODIMP put_Type ( BSTR strType );
  35. STDMETHODIMP get_DataDirectory ( BSTR * pstrDataDirectory );
  36. STDMETHODIMP put_DataDirectory ( BSTR strDataDirectory );
  37. STDMETHODIMP get_DefaultMailRoot ( BSTR * pstrDefaultMailRoot );
  38. STDMETHODIMP put_DefaultMailRoot ( BSTR strDefaultMailRoot );
  39. STDMETHODIMP get_BindType ( BSTR * pstrBindType );
  40. STDMETHODIMP put_BindType ( BSTR strBindType );
  41. STDMETHODIMP get_SchemaType ( BSTR * pstrSchemaType );
  42. STDMETHODIMP put_SchemaType ( BSTR strSchemaType );
  43. STDMETHODIMP get_Host ( BSTR * pstrHost );
  44. STDMETHODIMP put_Host ( BSTR strHost );
  45. STDMETHODIMP get_NamingContext ( BSTR * pstrNamingContext );
  46. STDMETHODIMP put_NamingContext ( BSTR strNamingContext );
  47. STDMETHODIMP get_Account ( BSTR * pstrAccount );
  48. STDMETHODIMP put_Account ( BSTR strAccount );
  49. STDMETHODIMP get_Password ( BSTR * pstrPassword );
  50. STDMETHODIMP put_Password ( BSTR strPassword );
  51. // Internal methods
  52. HRESULT Get(CMetabaseKey * pMBVirtualServer);
  53. HRESULT Set(CMetabaseKey * pMBVirtualServer);
  54. private:
  55. CComBSTR m_strType;
  56. CComBSTR m_strDataDirectory;
  57. CComBSTR m_strDefaultMailroot;
  58. CComBSTR m_strBindType;
  59. CComBSTR m_strSchemaType;
  60. CComBSTR m_strHost;
  61. CComBSTR m_strNamingContext;
  62. CComBSTR m_strAccount;
  63. CComBSTR m_strPassword;
  64. DWORD m_dwFC;
  65. };