Index: src/ch/TShellExtensionClient.h =================================================================== diff -u -rbfa621d15810c821a147b2499926996b158b6444 -r6609ba39811176f4803f0556db3da30e9e457b9d --- src/ch/TShellExtensionClient.h (.../TShellExtensionClient.h) (revision bfa621d15810c821a147b2499926996b158b6444) +++ src/ch/TShellExtensionClient.h (.../TShellExtensionClient.h) (revision 6609ba39811176f4803f0556db3da30e9e457b9d) @@ -19,7 +19,9 @@ #ifndef __TSHELLEXTENSIONCLIENT_H__ #define __TSHELLEXTENSIONCLIENT_H__ -#include "../chext/chext.h" +#include "../liblogger/TLogger.h" +#include "../common/ERegistrationResult.h" +#include "../chext/IShellExtControl.h" class TShellExtensionClient { @@ -28,8 +30,8 @@ ~TShellExtensionClient(); // registers or unregisters shell extension - HRESULT RegisterShellExtDll(const CString& strPath, long lClientVersion, long& rlExtensionVersion, CString& rstrExtensionStringVersion); - HRESULT UnRegisterShellExtDll(const CString& strPath); + ERegistrationResult RegisterShellExtDll(long lClientVersion, long& rlExtensionVersion, CString& rstrExtensionStringVersion); + ERegistrationResult UnRegisterShellExtDll(); // enables the extension if compatible with the client (CH) version // returns S_OK if enabled, S_FALSE if not @@ -42,10 +44,15 @@ void FreeControlInterface(); HRESULT InitializeCOM(); void UninitializeCOM(); + bool DetectRegExe(); + logger::TLoggerPtr& GetLogger(); + private: + logger::TLoggerPtr m_spLog; bool m_bInitialized; IShellExtControl* m_piShellExtControl; + std::wstring m_strRegExe; }; #endif \ No newline at end of file