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.

63 lines
1.5 KiB

  1. // {853FE2B1-B769-11d0-9C4E-00C04FB6C6FA}
  2. DEFINE_GUID(CLSID_CryptMenu,
  3. 0x853fe2b1, 0xb769, 0x11d0, 0x9c, 0x4e, 0x0, 0xc0, 0x4f, 0xb6, 0xc6, 0xfa);
  4. class CCryptMenuClassFactory : public IClassFactory
  5. {
  6. protected:
  7. DWORD m_ObjRefCount;
  8. public:
  9. CCryptMenuClassFactory();
  10. ~CCryptMenuClassFactory();
  11. //IUnknown methods
  12. STDMETHODIMP QueryInterface(REFIID, LPVOID FAR *);
  13. STDMETHODIMP_(DWORD) AddRef();
  14. STDMETHODIMP_(DWORD) Release();
  15. //IClassFactory methods
  16. STDMETHODIMP CreateInstance(LPUNKNOWN, REFIID, LPVOID FAR *);
  17. STDMETHODIMP LockServer(BOOL);
  18. };
  19. class CCryptMenuExt : public IShellExtInit, public IContextMenu
  20. {
  21. public:
  22. CCryptMenuExt();
  23. ~CCryptMenuExt();
  24. //IUnknown methods
  25. STDMETHODIMP QueryInterface(REFIID, LPVOID FAR *);
  26. STDMETHODIMP_(DWORD) AddRef();
  27. STDMETHODIMP_(DWORD) Release();
  28. //IShellExtInit methods
  29. STDMETHODIMP Initialize(LPCITEMIDLIST, LPDATAOBJECT, HKEY);
  30. //IContextMenu methods
  31. STDMETHODIMP QueryContextMenu(HMENU, UINT, UINT, UINT, UINT);
  32. STDMETHODIMP InvokeCommand(LPCMINVOKECOMMANDINFO);
  33. STDMETHODIMP GetCommandString(UINT_PTR, UINT, LPUINT, LPSTR, UINT);
  34. protected:
  35. void ResetSelectedFileList();
  36. HRESULT GetNextSelectedFile(LPTSTR *, __int64 *);
  37. DWORD m_ObjRefCount;
  38. LPDATAOBJECT m_pDataObj;
  39. int m_nToEncrypt;
  40. int m_nToDecrypt;
  41. __int64 m_cbToEncrypt;
  42. __int64 m_cbToDecrypt;
  43. int m_nFile;
  44. int m_nFiles;
  45. DWORD m_cbFile;
  46. LPTSTR m_szFile;
  47. bool m_fShutDown;
  48. };