ZScreen root folder is the main folder that provides room for Images, Text, Settings, Cache and Temp folders.
Initialization sequence
Soon after ZScreen is loaded, the following order is the loading sequence. Program.cs:
- Initializes DefaultRootAppFolder path to be Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), Application.ProductName);
- Accesses XMLSettings.Read().
- The XMLSettingsFile property initializes the sub-folder paths inside Root folder.
- The location of the Root folder is set here inside InitializeDefaultFolderPaths().
- If there is a ZScreen folder located in the same directory as the ZScreen.exe Root folder will be this folder
- Otherwise ZScreen folder will be the DefaultRootAppFolder
- Finally it creates the Settings directory if it doesn’t exist based on the Root folder.
- Loads ZScreen GUI. ZScreen calls ConfigureDirs() which creates subfolders inside the DefaultRootAppFolder
Improved Portable Configuration detection
