Hello,
i was very pleased to be able to predefine some of the settings (auto-update or first launch wizard for example) for our 200 workers terminal server farm. As they were in the registry i was able to set single settings via Group Policy.
Now with only xml support, i can just do all or nothing and leave the employees no choice.
Why was this killer feature removed?
Hi @Juliku
Sorry for late response, somehow i skipped this.
Since v6.0, ImageGlass only saves settings in igconfig.xml file, there are some benefits:
Now with only xml support, i can just do all or nothing and leave the employees no choice.
How hard/easy is it when you copy and override the igconfig.xml in employee's machine? You can suggest me the better way you want to do with xml file?
Thanks
Hi Phap,
that's the point, if i copy and override it, all user made choices are overwritten, which i don't particularly like.
A second xml, maybe named "defaults.xml", in which settings are applied if they are not overwritten by a setting in the "igconfig.xml" would be to complicated, right?
This would give me the possibility to predefine settings but the user can set his own, if he want's to.
Hi @Juliku
Thanks for clarification.
if i copy and override it, all user made choices are overwritten
This makes sense! I will think about the solution and ask for your opinion.
Let's say you could set default settings by a globaligconfig.xml, can you share me how would you do it? I'm finding a solution to do it gracefully, and I only can do it in app level (not installer level).
Well, I'd change the behaviour of imageglass.exe …
- First check whether there is a igconfig.xml in the program file path. (Let's call this one the "global config file".)
- If yes, take this settings as default.
- If there is a user-specific igconfig.xml in Appdata, take this one instead. (Let's call this one a "local config file".)
This will provide new users with a standard config while former users of ImageGlass stay on their existing config.
So it means, to do this as a system admin,
Since I don't understand the process of how admin deploys an app in local network, and abilities of the deployment software can do, this will help me know it clearer.
This should be no problem.
Usual software deployment systems (i. e. SCCM by MS) work in a way that they are going through setup scripts (batch files or similar) to install software. In this script it would be no problem to copy the global config file to the program file folder, too.
Got another idea:
You could provide for two config files in the program's directory (where
imageglass.exeresides):1.
igconfig_default.xmlWhen present and no user config file in Appdata is found use these settings to generate a new user config file in the user's Appdata.
Would be useful for first-time (initial) settings like language etc., but the user can still change the settings according to his/her flavour which will be saved in his personal config file.If a user config file in Appdata already exists, two possible ways come to my mind:
- Ignore it completely. :-)
- Take only these settings that are not set in the user config file and incorporate them there. This maybe would make sense when introducing new config options in future new progam versions.
2.
igconfig_mandatory.xmlWhen present these settings are used and override user-settings.
Would be useful i. e. for auto-update-control etc. which the administrator wants to enforce. Since this file cannot be edited/removed in the program's directory users would stick to this settings.
When absent don't mind it.. :-DJust a bunch of ideas. One would still have to provide for these two files himself as discussed formerly which still seems a possible solution for me.
Hi @d2phap,
we would just push the global config file to all computers, where the program is installed.
This gives us the possibility to change the config later, if needed.
The second one ("Got another idea:") sounds perfect, i would have all the possibilities to predefine configs which the user can change or force them on demand.
Thanks @Juliku
I will support the second idea: two config files
Hello @d2phap ,
maybe you check out the solution from Greenshot, they did it the way i think its perfect, so you can predefine or even lock some settings at install, and the user change some values, it takes that custom values (if it's not a locked settings). As it is now, i can't publish it in the network without getting questions what they should press at "First launch". With the predefined config most users probably won't even recognize its a different imageviewer!
Greenshot knows of 3 different files, which are loaded in the following order:
greenshot-defaults.ini: this specifies the defaults which are used if no other settings are available. (At first start) greenshot.ini: this is the normal file, with all the settings of the user, which is written by Greenshot. This overrules the settings in the greenshot-defaults.ini file. greenshot-fixed.ini: has settings which will overrule all settings in the files above.Greenshot will look for every mentioned file, in the described order, first in the same location as the executable (e.g. installation directory) and if there is not there than in %APPDATA%\Greenshot (e.g. C:\Users\USERNAME\AppData\Roaming\Greenshot).
The configuration is build from zero, setting for setting, by using the following 4 steps:
Take the default set by the developer If a greenshot-defaults.ini was found, and the setting can be found in there, the value from 1 is overwritten. If a greenshot.ini was found, and the setting can be found in there, the value from 2 is overwritten. If a greenshot-fixed.ini was found, and the setting can be found in there, the value from 3 is overwritten.
Hi @Flashbert
Thanks for the nice reference!
I am finalizing the new settings feature for ImageGlass. There will be 3 files:

So I am happy to say ImageGlass will do exactly same as the below steps:
igconfig.default.xml was found, and the setting can be found in there, the value from 1 is overwritten.igconfig.xml was found, and the setting can be found in there, the value from 2 is overwritten.igconfig.admin.xml was found, and the setting can be found in there, the value from 3 is overwritten.It may be shipped to ImageGlass Moon in next few days for user testing.
I have done the new ImageGlass Settings component, and it's ready to test in IG Moon version:
https://imageglass.org/moon.
There were some breaking-change in config file, please refer to #653 for further details.
Thanks all!