Automating and enhancing TC setup to use default values

English support forum

Moderators: Hacker, petermad, Stefan2, white

User avatar
wanderer
Power Member
Power Member
Posts: 1644
Joined: 2003-03-28, 14:35 UTC
Location: Sol

Automating and enhancing TC setup to use default values

Post by *wanderer »

For quite some time now, i've been seeing in this forum some posts concerning TC's existing features that some users would like to see them work in a different way by default (for instance, use F2 key for renaming instead of SHIFT+F6). For some of them it is already possible, because there are settings in wincmd.ini that allow this.

In the past, it has also been asked (by me) if there is a way to avoid all these questions during setup and have some default values so every time you run the setup, it just installs TC using the default values. I think it was Christian that told me that inside TC's installation exe, there is a .inf file which can be altered to contain the default values one wishes. That's fine except everytime you download a new version of TC, you have to go and alter this file before installing TC. IMHO this method is useless in most cases (where 1-3 PCs are concerned). It's quicker to just answer TC's installation questions than to go and alter the file (which BTW contains version-specific info in every new TC version so you can't just overwrite it with a default file).

For all these reasons, i have the following suggestions that may make some things more user friendly:

1. TC's installation EXE program should check the current directory for a TCDefaults.ini file (or something like that) which will contain the "[auto]" section that currently exists in the Install.inf file inside the EXE. Perhaps it could also check the registry (for those who don't like INIs - if there is anyone). If this file is found, it will perform an automatic no-questions-asked installation based on the installation defaults specified in it. Install.inf may still contain an "[auto]" section but if the TCDefaults.ini is found in the current dir, its default values will be the ones used during the installation (or pehaps the two could be merged in memory to avoid having mising values in TCDefaults.ini affect TC's installation).

2. TCDefaults.ini might also contain default values for all settings of wincmd.ini (even key-bindings for users requesting F2 for rename ;) ). So, during TC's first installation, if wincmd.ini is not found in the default location or the location specified by the user, it will be created by TC's installation, not TC itself. If a value of a wincmd.ini setting is found on a special section of TCDefaults.ini (i.e. "[TCDefaults]"), it will be written as the default value in the newly created wincmd.ini otherwise TC's built-in default value will be used.

3. Either Christian creates a new utility (i don't see the reason) or the author of an already-existing tool (i.e. TweakTC) changes the utility to also manage the settings in TCDefaults.ini file.

IMHO, this is a way to let the user easily and quickly customize and automate TC installation even when installing it in a new PC. Just copying wincmd.ini from one PC to another may not always be a good idea. There are some user-specific settings in it (like the CTRL+D menu or quicksearches) that may not be a good idea to "travel" from user to user or from PC to PC. This idea might also be extended to include button-bar default buttons.
- Wanderer -

¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Normally using latest TC on:
x32: WinXPx32 SP3 (very rarely nowadays).
x64: Clients/Servers - Win10/Win11 and Win2K16 to Win2K22, mainly Win10 though.
User avatar
Hacker
Moderator
Moderator
Posts: 13144
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Post by *Hacker »

On the whole, I agree, but IMO it would be enough if TC simply used the values selected during a previous install (install dir, ini location, additional languages, start menu / desktop icons).
I don't mind pressing Enter five times, but changing the options to my preferred defaults each time is annoying.

Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.
User avatar
wanderer
Power Member
Power Member
Posts: 1644
Joined: 2003-03-28, 14:35 UTC
Location: Sol

Post by *wanderer »

Hacker wrote:On the whole, I agree, but IMO it would be enough if TC simply used the values selected during a previous install
If a previous install has been performed... :)

In that case it would probably have to store them in registry which would not be very convenient in case you wish to change any setting and install TC on another PC...

In any case, something (anything) that would prevent a user to re-enter all these settings when upgrading TC would be welcome...
- Wanderer -

¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Normally using latest TC on:
x32: WinXPx32 SP3 (very rarely nowadays).
x64: Clients/Servers - Win10/Win11 and Win2K16 to Win2K22, mainly Win10 though.
User avatar
Hacker
Moderator
Moderator
Posts: 13144
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Post by *Hacker »

In that case it would probably have to store them in registry
No, why? TC can certainly check where it has been installed (from registry), the ini location (registry, program dir), languages (program dir\language), icons (start menu and desktop).

Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.
User avatar
wanderer
Power Member
Power Member
Posts: 1644
Joined: 2003-03-28, 14:35 UTC
Location: Sol

Post by *wanderer »

Hacker wrote:No, why? TC can certainly check where it has been installed (from registry), the ini location (registry, program dir), languages (program dir\language), icons (start menu and desktop).

Roman
True. A little hasty response? It just came natural to me because i thought programming-wise it would be easier to just check a bunch of settings stored somewhere than a bunch of different things (values of settings, whether files exist and/or others).

Anyway, as i said, anything would be welcome...
- Wanderer -

¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Normally using latest TC on:
x32: WinXPx32 SP3 (very rarely nowadays).
x64: Clients/Servers - Win10/Win11 and Win2K16 to Win2K22, mainly Win10 though.
User avatar
Hacker
Moderator
Moderator
Posts: 13144
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Post by *Hacker »

It just came natural to me because i thought programming-wise it would be easier to just check a bunch of settings stored somewhere than a bunch of different things
True. :) But the way you proposed it would be more difficult for the user.

Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.
User avatar
wanderer
Power Member
Power Member
Posts: 1644
Joined: 2003-03-28, 14:35 UTC
Location: Sol

Post by *wanderer »

Hacker wrote:True. :) But the way you proposed it would be more difficult for the user.

Roman
Not really (not in my case at least). I have a specific dir (shared) in which i place all TC updates i download. If i just set the settings in that ini file once (including the "auto=1") and place it in that dir, all i have to do after downloading the updated TC is to run the installer from all the PCs and it just runs automatically everywhere. :) If at some point i decide to change a setting, i just change it in the INI and at the next TC update, it is just applied in all PCs. For a single-pc user, your method is more convenient but not for multiple PCs (IMHO). A combination of both methods would be even better...

Christian, are you out there? Any opinion on the matter?
- Wanderer -

¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Normally using latest TC on:
x32: WinXPx32 SP3 (very rarely nowadays).
x64: Clients/Servers - Win10/Win11 and Win2K16 to Win2K22, mainly Win10 though.
User avatar
Stance
Power Member
Power Member
Posts: 1079
Joined: 2005-03-29, 06:26 UTC

Post by *Stance »

Hi wanderer!
There's a similar thread in the german forum: [REQUEST] Setup Einstellungen speichern

Christian wrote:
Babelfish Translation wrote:I thought rather of another solution: If the Installer finds an existing installation of TC, he could offer 2 options: Update and Reinstall. With update simply only the new files copied (Links etc. exist already), with Reinstall would come the normal dialogues as before.

I have left however so far to change the behavior of the Installer because I fear that this could cause a lot of new problems...
Kind regards
Stance + Babelfish :)
Phred
Senior Member
Senior Member
Posts: 382
Joined: 2009-06-16, 15:24 UTC
Location: SEAu

--> Install Defaults <--

Post by *Phred »

I'd like to bring this subject up again - the subject of the defaults that TC comes to us loaded with.

I agree with wanderer, that Christian prepares TC with a large number of defaults that aren't entirely unreasonable, but they're not MY defaults.

Every time I install TC or reinstall it from scratch I have to do things all over again: English speakers rarely speak more than English so the first one I have to change is 'No' Don't install Multiple Languages... (I don't know how many times I've changed that one.) And on it goes from there.

Tabs, Fonts, Drag&Drop, Layout, Display... the list is almost endless. Just to set TC up the way I think is sensible.

I can't do it with old ini's because I may tweak each user incarnation a different way, and the way I set up one machine's hardware configuration may not be the same as the next. But every time it's the same old 20-30 basic Configuration alterations. Grr.

I envisage, like wanderer, a TCDefaults.ini file that we can put beside Setup.exe and have it referenced when Setup.exe installs. Or better would be a TCDefaults.exe that could modify Setup.exe before installation begins, in the same way that a .reg file merges into the registry. I've seen 'pre-install' programs that modify install programs in the past, elsewhere.


The issue also comes up in things like the Rename tool. It takes SIX keystrokes to change the default rename of extensions to lower case, the way I like my files: Tab, Home, [, Shift, L, ]. :x
Yes, I could Load a Standard MRT configuration set but it would be so much easier IMO if we could establish TC according to our global preferences, then modify it during usage according to circumstances.
User avatar
petermad
Power Member
Power Member
Posts: 16104
Joined: 2003-02-05, 20:24 UTC
Location: Denmark
Contact:

Post by *petermad »

2Phred

Noy that I am aginst your suggestion. but why don't once and for all make a fresh wincmd.ini (and additional ini's if you use redirection) with your prefferred 20-30 configuration alterations, and then use it when you insrall new TC's ?
License #524 (1994)
Danish Total Commander Translator
TC 11.55rc4 32+64bit on Win XP 32bit & Win 7, 8.1 & 10 (22H2) 64bit, 'Everything' 1.5.0.1393a
TC 3.60b4 on Android 6, 13, 14
TC Extended Menus | TC Languagebar | TC Dark Help | PHSM-Calendar
User avatar
wanderer
Power Member
Power Member
Posts: 1644
Joined: 2003-03-28, 14:35 UTC
Location: Sol

Post by *wanderer »

petermad wrote:why don't once and for all make a fresh wincmd.ini (and additional ini's if you use redirection) with your prefferred 20-30 configuration alterations, and then use it when you insrall new TC's ?
This is what i do so far. The problem is that when a new TC version (containing new INI entries) is installed over an existing one, there is no way to "tell" the new installation to use different default values for the new INI entries.

I do frequent updates and reinstalls of TC and i still believe a TCDefaults.ini file would be very convenient and would solve many problems.

IMO though, the best thing would be to have (at runtime) two INIs. A local INI and a global INI. The local INI (at a location writable by the user) would containing only one entry in the beginning (the global INI's location). TC would try reading the local INI for a setting and if not found, it would read the global. If not found there too, the internal TC default value would be used. When the user changed a setting, it would be written in the local INI only.

IMO this would be the best solution for network setups, like the one i have at home (with 3 networked PCs) and also at work (more PCs). That way, a common default configuration could exist for all users and if one user wishes to change anything, he can still do it. If a new TC version is released, the admin can update the global INI with the default values he wishes for the new INI entries, so they can automatically be applied to all users.
- Wanderer -

¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Normally using latest TC on:
x32: WinXPx32 SP3 (very rarely nowadays).
x64: Clients/Servers - Win10/Win11 and Win2K16 to Win2K22, mainly Win10 though.
Phred
Senior Member
Senior Member
Posts: 382
Joined: 2009-06-16, 15:24 UTC
Location: SEAu

Post by *Phred »

Yep, I'm again in furious agreement with wanderer. I see the idea of 'pre-fixing' a TC installation as far better then a 'post-fixed' method.

Post-fixing means delving down into user/TC folders and swapping ini references, or the command line, versus a 'global blast' over the setup file and have everything go in as you want it.

How, petermad, would you avoid having to answer the multi-language question, for instance? Just use a zip..? Less than ideal, IMO.
User avatar
petermad
Power Member
Power Member
Posts: 16104
Joined: 2003-02-05, 20:24 UTC
Location: Denmark
Contact:

Post by *petermad »

How, petermad, would you avoid having to answer the multi-language question
Well, if we are talking about upgrades and not new installations, then you can just use the "Update previous installation" option that was introduced with TC 7.50.

But off course with new installations, you can't avoid that.

And again - I am not against your suggestion - I just pointed out a workaround for the time being.
Last edited by petermad on 2010-04-07, 22:16 UTC, edited 1 time in total.
License #524 (1994)
Danish Total Commander Translator
TC 11.55rc4 32+64bit on Win XP 32bit & Win 7, 8.1 & 10 (22H2) 64bit, 'Everything' 1.5.0.1393a
TC 3.60b4 on Android 6, 13, 14
TC Extended Menus | TC Languagebar | TC Dark Help | PHSM-Calendar
User avatar
wanderer
Power Member
Power Member
Posts: 1644
Joined: 2003-03-28, 14:35 UTC
Location: Sol

Post by *wanderer »

petermad wrote:But off course with new installations, you can't avoid that.
Well, not directly but you can actually avoid that by copying the INI file in a standard location (i.e. %AppData%\Ghisler) before executing the installer. Then, you just have to click on "Update previous installation". ;) That is another workaround though...
- Wanderer -

¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Normally using latest TC on:
x32: WinXPx32 SP3 (very rarely nowadays).
x64: Clients/Servers - Win10/Win11 and Win2K16 to Win2K22, mainly Win10 though.
Phred
Senior Member
Senior Member
Posts: 382
Joined: 2009-06-16, 15:24 UTC
Location: SEAu

Pity

Post by *Phred »

Yes, it looks as though we're going to have to make do with work-arounds.

And, petermad, I understand you're just suggesting the possibles. What we have to work on now is getting Christian's attention.. :)
Post Reply