Index: src/ch/AppHelper.h =================================================================== diff -u -r4213a6bbd2b543810d29c5a1964917903055d60c -rffb46a396ce20cda2e04020cf01c118ae81642b5 --- src/ch/AppHelper.h (.../AppHelper.h) (revision 4213a6bbd2b543810d29c5a1964917903055d60c) +++ src/ch/AppHelper.h (.../AppHelper.h) (revision ffb46a396ce20cda2e04020cf01c118ae81642b5) @@ -19,43 +19,49 @@ #ifndef __APPHELPER_H__ #define __APPHELPER_H__ +#include +#include "TPathProcessor.h" + class CAppHelper { public: CAppHelper(); virtual ~CAppHelper(); bool SetAutorun(bool bState); // changes state of "run with system" option - PTSTR ExpandPath(PTSTR pszString); // expands path string - ie. into c:\windows bool IsFirstInstance() const { return m_bFirstInstance; }; PCTSTR GetAppName() const { return m_pszAppName; }; PCTSTR GetAppNameVer() const { return m_pszAppNameVer; }; PCTSTR GetAppVersion() const { return m_pszAppVersion; }; - PCTSTR GetProgramPath() const { return m_pszProgramPath; }; PCTSTR GetProgramName() const { return m_pszProgramName; }; - static bool GetProgramDataPath(CString& rStrPath); + bool GetProgramDataPath(CString& rStrPath); + CString ExpandPath(CString strPath); + CString GetProgramPath() const; + bool IsInPortableMode(); + protected: void InitProtection(); // optional call - protects from running multiple instance void RetrievePaths(); // reads program's path and name void RetrieveAppInfo(); // reads app name and version from VERSION resource - UINT GetFolderLocation(int iFolder, PTSTR pszBuffer); protected: HANDLE m_hMutex; bool m_bFirstInstance; // tells if it is first instance(true) or second(or third, ...) // program placement - TCHAR* m_pszProgramPath; // path from which this program was run + TPathProcessor m_pathProcessor; TCHAR* m_pszProgramName; // name of this program (ie. CH.exe) TCHAR* m_pszAppName; // app-name string of this app TCHAR* m_pszAppNameVer; // extended app-name-with small version TCHAR* m_pszAppVersion; // app-version string of this app (VERSION based) + + boost::optional m_optPortableMode; }; #endif \ No newline at end of file