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.

49 lines
1.8 KiB

  1. // GUID support functions
  2. #ifndef _GUIDHELP_H
  3. #define _GUIDHELP_H
  4. class CStr;
  5. class CString;
  6. struct IContextMenuCallback;
  7. struct IComponent;
  8. HRESULT ExtractData( IDataObject* piDataObject,
  9. CLIPFORMAT cfClipFormat,
  10. PVOID pbData,
  11. DWORD cbData );
  12. HRESULT ExtractString( IDataObject* piDataObject,
  13. CLIPFORMAT cfClipFormat,
  14. CStr* pstr,
  15. DWORD cchMaxLength );
  16. HRESULT ExtractString( IDataObject* piDataObject,
  17. CLIPFORMAT cfClipFormat,
  18. CString* pstr,
  19. DWORD cchMaxLength );
  20. HRESULT GuidToCStr( CStr* pstr, const GUID& guid );
  21. HRESULT GuidToCString(CString* pstr, const GUID& guid );
  22. HRESULT ExtractSnapInCLSID( IDataObject* piDataObject, CLSID* pclsidSnapin );
  23. HRESULT ExtractObjectTypeGUID( IDataObject* piDataObject, GUID* pguidObjectType );
  24. HRESULT LoadRootDisplayName(IComponentData* pIComponentData, CStr& strDisplayName);
  25. HRESULT LoadRootDisplayName(IComponentData* pIComponentData, CString& strDisplayName);
  26. HRESULT LoadAndAddMenuItem(
  27. IContextMenuCallback* pIContextMenuCallback,
  28. UINT nResourceID, // contains text and status text seperated by '\n'
  29. long lCommandID,
  30. long lInsertionPointID,
  31. long fFlags,
  32. HINSTANCE hInst,
  33. PCTSTR pszLanguageIndependentName);
  34. HRESULT AddSpecialSeparator(
  35. IContextMenuCallback* pIContextMenuCallback,
  36. long lInsertionPointID = CCM_INSERTIONPOINTID_ROOT_MENU );
  37. HRESULT AddSpecialInsertionPoint(
  38. IContextMenuCallback* pIContextMenuCallback,
  39. long lCommandID,
  40. long lInsertionPointID = CCM_INSERTIONPOINTID_ROOT_MENU );
  41. #endif