Leaked source code of windows server 2003
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.

86 lines
2.8 KiB

  1. /*++
  2. Copyright (C) 1998-1999 Microsoft Corporation
  3. Module Name:
  4. smabout.h
  5. Abstract:
  6. Implementation of the ISnapinAbout interface.
  7. --*/
  8. #ifndef __SMABOUT_H_INCLUDED__
  9. #define __SMABOUT_H_INCLUDED__
  10. #include "smlogcfg.h"
  11. class ATL_NO_VTABLE CSmLogAbout :
  12. // public CComObjectRoot,
  13. public CComObjectRootEx<CComSingleThreadModel>,
  14. public CComCoClass<CSmLogAbout, &CLSID_PerformanceAbout>,
  15. public ISnapinAbout
  16. {
  17. BEGIN_COM_MAP(CSmLogAbout)
  18. COM_INTERFACE_ENTRY(ISnapinAbout)
  19. END_COM_MAP_X()
  20. public:
  21. CSmLogAbout();
  22. virtual ~CSmLogAbout();
  23. DECLARE_REGISTRY_RESOURCEID(IDR_PERFORMANCEABOUT)
  24. DECLARE_NOT_AGGREGATABLE(CSmLogAbout)
  25. // IUnknown overrides
  26. virtual ULONG __stdcall AddRef();
  27. virtual ULONG __stdcall Release();
  28. virtual HRESULT __stdcall QueryInterface(const IID& interfaceID, void** interfaceDesired);
  29. // ISnapinAbout
  30. /*
  31. STDMETHOD(GetSnapinDescription)(OUT LPOLESTR __RPC_FAR *lpDescription);
  32. STDMETHOD(GetProvider)(OUT LPOLESTR __RPC_FAR *lpName);
  33. STDMETHOD(GetSnapinVersion)(OUT LPOLESTR __RPC_FAR *lpVersion);
  34. STDMETHOD(GetSnapinImage)(OUT HICON __RPC_FAR *hAppIcon);
  35. STDMETHOD(GetStaticFolderImage)(
  36. OUT HBITMAP __RPC_FAR *hSmallImage,
  37. OUT HBITMAP __RPC_FAR *hSmallImageOpen,
  38. OUT HBITMAP __RPC_FAR *hLargeImage,
  39. OUT COLORREF __RPC_FAR *crMask);
  40. */
  41. virtual HRESULT __stdcall GetSnapinDescription(OUT LPOLESTR __RPC_FAR *lpDescription);
  42. virtual HRESULT __stdcall GetProvider(OUT LPOLESTR __RPC_FAR *lpName);
  43. virtual HRESULT __stdcall GetSnapinVersion(OUT LPOLESTR __RPC_FAR *lpVersion);
  44. virtual HRESULT __stdcall GetSnapinImage(OUT HICON __RPC_FAR *hAppIcon);
  45. virtual HRESULT __stdcall GetStaticFolderImage(
  46. OUT HBITMAP __RPC_FAR *hSmallImage,
  47. OUT HBITMAP __RPC_FAR *hSmallImageOpen,
  48. OUT HBITMAP __RPC_FAR *hLargeImage,
  49. OUT COLORREF __RPC_FAR *crMask);
  50. private:
  51. //
  52. // The following data members MUST be initialized by the constructor
  53. // of the derived class.
  54. UINT m_uIdStrDescription; // Resource Id of the description
  55. // UINT m_uIdStrProvider; // Resource Id of the provider (ie, Microsoft Corporation)
  56. // UINT m_uIdStrVersion; // Resource Id of the version of the snapin
  57. UINT m_uIdIconImage; // Resource Id for the icon/image of the snapin
  58. UINT m_uIdBitmapSmallImage;
  59. UINT m_uIdBitmapSmallImageOpen;
  60. UINT m_uIdBitmapLargeImage;
  61. COLORREF m_crImageMask;
  62. long refcount;
  63. private:
  64. HRESULT HrLoadOleString(UINT uStringId, OUT LPOLESTR * ppaszOleString);
  65. HRESULT TranslateString( IN LPSTR lpSrc, OUT LPOLESTR __RPC_FAR *lpDst);
  66. }; // CSmLogAbout()
  67. #endif // __SMABOUT_H_INCLUDED__