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.

42 lines
1.3 KiB

  1. ///////////////////////////////////////////////////////////////////////////////
  2. // HWDeviceCustomProperties
  3. ///////////////////////////////////////////////////////////////////////////////
  4. #ifndef _CSTMPROP_H
  5. #define _CSTMPROP_H
  6. #include "unk.h"
  7. #include <shpriv.h>
  8. //extern const CLSID CLSID_HWDeviceCustomProperties;
  9. class CHWDeviceCustomPropertiesImpl : public CCOMBase,
  10. public IHWDeviceCustomProperties
  11. {
  12. public:
  13. // Interface IHWDeviceCustomProperties
  14. STDMETHODIMP InitFromDeviceID(LPCWSTR pszDeviceID, DWORD dwFlags);
  15. STDMETHODIMP InitFromDevNode(LPCWSTR pszDevNode, DWORD dwFlags);
  16. STDMETHODIMP GetDWORDProperty(LPCWSTR pszPropName, DWORD* pdwProp);
  17. STDMETHODIMP GetStringProperty(LPCWSTR pszPropName, LPWSTR* ppszProp);
  18. STDMETHODIMP GetMultiStringProperty(LPCWSTR pszPropName,
  19. BOOL fMergeMultiSz, WORD_BLOB** ppblob);
  20. STDMETHODIMP GetBlobProperty(LPCWSTR pszPropName, BYTE_BLOB** ppblob);
  21. public:
  22. CHWDeviceCustomPropertiesImpl();
  23. ~CHWDeviceCustomPropertiesImpl();
  24. private:
  25. class CHWDeviceInst* _phwdevinst;
  26. class CNamedElem* _pelemToRelease;
  27. DWORD _dwFlags;
  28. BOOL _fInited;
  29. };
  30. typedef CUnkTmpl<CHWDeviceCustomPropertiesImpl> CHWDeviceCustomProperties;
  31. #endif // _CSTMPROP_H