Index: src/chext/ShellExtControl.h =================================================================== diff -u -N -rd3f78bbf9677c239814dae1041f24f0bbc821db9 -rd0fdcc905035e648382256101a3d99f429af6d56 --- src/chext/ShellExtControl.h (.../ShellExtControl.h) (revision d3f78bbf9677c239814dae1041f24f0bbc821db9) +++ src/chext/ShellExtControl.h (.../ShellExtControl.h) (revision d0fdcc905035e648382256101a3d99f429af6d56) @@ -26,13 +26,15 @@ class ATL_NO_VTABLE CShellExtControl : public CComObjectRootEx, public CComCoClass, - public IShellExtControl + public IDispatchImpl { public: - CShellExtControl() { } - ~CShellExtControl() { } + CShellExtControl(); + ~CShellExtControl(); - STDMETHOD(GetVersion)(LONG* plVersion); + STDMETHOD(GetVersion)(LONG* plVersion, BSTR* pbstrVersion); + STDMETHOD(SetFlags)(LONG lFlags, LONG lMask); + STDMETHOD(GetFlags)(LONG* plFlags); DECLARE_REGISTRY_RESOURCEID(IDR_SHELLEXTCONTROL) @@ -42,6 +44,17 @@ COM_INTERFACE_ENTRY(IUnknown) COM_INTERFACE_ENTRY(IShellExtControl) END_COM_MAP() + +protected: + HANDLE m_hMemory; + HANDLE m_hMutex; + struct SHELLEXT_DATA + { + long m_lID; + long m_lFlags; + } *m_pShellExtData; + + CComAutoCriticalSection m_lock; }; #endif //__SHELLEXTCONTROL_H_