1
0

browserRegistry.h 1011 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. #ifndef NULLSOFT_WINAMP_BROWSER_REGISTRY_HEADER
  2. #define NULLSOFT_WINAMP_BROWSER_REGISTRY_HEADER
  3. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  4. #pragma once
  5. #endif
  6. #include "./ifc_ombrowserregistry.h"
  7. class obj_ombrowser;
  8. class OmBrowserRegistry : public ifc_ombrowserregistry
  9. {
  10. protected:
  11. OmBrowserRegistry(LPCWSTR pszName);
  12. ~OmBrowserRegistry();
  13. public:
  14. static HRESULT CreateInstance(LPCWSTR pszName, OmBrowserRegistry **instance);
  15. public:
  16. /* Dispatchable */
  17. size_t AddRef();
  18. size_t Release();
  19. int QueryInterface(GUID interface_guid, void **object);
  20. /* ifc_ombrowserregistry */
  21. HRESULT GetPath(LPWSTR pszBuffer, INT cchBufferMax);
  22. HRESULT Write(void);
  23. HRESULT Delete(void);
  24. HRESULT UpdateColors(void);
  25. protected:
  26. HRESULT CreatePath(LPWSTR pszBuffer, INT cchBufferMax);
  27. HRESULT CreateRoot(HKEY *hKey, DWORD *pDisposition);
  28. HRESULT WriteColors(HKEY hKey);
  29. protected:
  30. RECVS_DISPATCH;
  31. protected:
  32. ULONG ref;
  33. LPWSTR name;
  34. LPWSTR path;
  35. };
  36. #endif //NULLSOFT_WINAMP_BROWSER_REGISTRY_HEADER