TC seems not to autoclose when instaaling beta version

Please report only one bug per message!

Moderators: white, Hacker, petermad, Stefan2

dawie
New Member
New Member
Posts: 1
Joined: 2006-12-21, 07:05 UTC
Location: South Africa

TC seems not to autoclose when instaaling beta version

Post by *dawie »

It happened twice to me when installing the combined 32 and 64 bit version on a system running Windows 10 Enterprise 64bit edition. One PC was an upgraded from Windows 8.1 system and the other was aclean install of Windows 10.

I do not have a 32Bit W10 system available to test on that.
The difficult, we do immediately. The impossible takes a little longer.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

You seem to be right, I will check what the problem is.
Author of Total Commander
https://www.ghisler.com
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

I found the reason for this: It happens because I use a 32-bit installer for the combined version. It tries to get the path of the running program with GetModuleFileNameEx, but this function fails when the calling program is 32-bit, and the checked program is 64-bit. The correct function to call is QueryFullProcessImageName. The function rquires Windows Vista or newer, so I will load it dynamically. On XP, the installer will then also close TC instances from other directories, but better than not closing any at all.
Author of Total Commander
https://www.ghisler.com
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

This should be fixed in TC 8.52 RC1, please test it!
Author of Total Commander
https://www.ghisler.com
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Anyone tested this?
Author of Total Commander
https://www.ghisler.com
User avatar
karlchen
Power Member
Power Member
Posts: 4603
Joined: 2003-02-06, 22:23 UTC
Location: Germany

Post by *karlchen »

Hello, Christian.

I had noticed that the reported little nuisance occurred on Ubuntu/Wine - Mint/Wine as well.
So I thought I'd try today when upgrading T.C. 8.51a 32+64 bit to 8.52 32+64 bit (final).
Here the issue persists. Only a running TC 32-bit instance will be closed by the combined installer. The running TC 64-bit instance will not be closed.

Yet, this is Ubuntu 14.04.3 64-bit with Wine 1.6.2 and not Windows. So my answer will not be relevant with respect to the main target platform Windows 7 64-bit or higher.

Cheers,
Karl
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Yes, it must be a Wine problem. The minimum Windows version for this to work is Vista, so maybe Wine is missing the necessary functions.
Author of Total Commander
https://www.ghisler.com
User avatar
karlchen
Power Member
Power Member
Posts: 4603
Joined: 2003-02-06, 22:23 UTC
Location: Germany

Post by *karlchen »

New testing platform:
Windows Server 2008 R2 SP1, 64-bit
Windows 7 Home Premium 64-bit SP1

Running Total Commander
when launching the combined 32-bit/64-bit installer of T.C. 8.52:
+ Total Commander 8.51a 32-bit and
+ Total Commander 8.51a 64-bit

Scenario 1:
Launching the setup of Total Commander 8.52 32+64-bit from inside the running Total Commander 8.51a 32-bit
Result:
The TC 32-bit instance will be terminated.
The TC 64-bit instance will not be terminated, yielding a corresponding error message. The installer cannot overwrite the loaded totalcmd64.exe.

Scenario 2:
Launching the setup of Total Commander 8.52 32+64-bit from inside the running Total Commander 8.51a 64-bit
Both running TC instances, 32-bit and 64-bit, will be closed. The installation succeeds without any problem.

Addendum:
Another Total Commander instance, 64-bit, running from a different %COMMANDER_PATH%, was not closed in any test. This seems to work as designed on Windows 7.

Karl
siealex
Senior Member
Senior Member
Posts: 278
Joined: 2009-03-22, 16:36 UTC

Post by *siealex »

Confirmed when upgrading 8.51a to 8.52 on Windows 10 x64. 32-bit version wasn't terminated.
We are not so S.M.A.R.T. as we imagine...
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Cannot reproduce. Both the 32-bit version and 64-bit version are terminated just fine by the combined 32+64bit installer on Windows 7, even multiple copies. I have just tried it again a few seconds ago.
Author of Total Commander
https://www.ghisler.com
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Where is TC installed on your system? It works for me in c:\totalcmd and c:\utils\totalcmd.852

Maybe it's a problem with long vs. short file names? What is shown as target when you start the installer?
Author of Total Commander
https://www.ghisler.com
User avatar
karlchen
Power Member
Power Member
Posts: 4603
Joined: 2003-02-06, 22:23 UTC
Location: Germany

Post by *karlchen »

Hello, Christian.

Long vs. short filenames should not be a problem here.
Total Commander is installed inside folders that are named
+ C:\utils\totalcmd
+ C:\utils\TC851a
+ C:\Utils\TC801
or similar, whereby the installation which has been installed by the T.C. installer will be C:\Utils\totalcmd.

As stated before, but maybe expressed not really clearly enough:

If the TC8.52 combined installer 32-bit+64-bit is launched from inside a running T.C. 64-bit instance, everything is fine.
All loaded T.C. instances started from the target folder will be terminated, 32-bit or 64-bit.

If the TC8.52 combined installer 32-bit+64-bit is launched from inside a running T.C. 32-bit instance, the issue occurs:
Only 32-bit T.C. instances started from the target folder will be terminated.

In all cases the TC 8.52 combined installer will want to install to C:\Utils\totalcmd.

Karl
--
P.S.:
And I am only talking about Server 2008 R2 SP1 and Windows 7 HP SP1 64-bit.
(No more stories about Ubuntu/Wine or Mint/Wine for the moment.)
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Interesting, could it be that you have set compatibility settings in TC 32-bit? These will be inherited by the installer. So when the installer checks whether it is running on Vista or newer to use the new name check function, it will see "Windows XP" and not try to load the function...
Author of Total Commander
https://www.ghisler.com
User avatar
karlchen
Power Member
Power Member
Posts: 4603
Joined: 2003-02-06, 22:23 UTC
Location: Germany

Post by *karlchen »

Good morning, Christian.

Compatibility Mode for Total Commander:
Has never been configured on any of my Windows systems.
Cannot post the Server 2008 R2 SP1 property dialogues at this point in time.
But can post the property dialogues for totalcmd.exe (32-bit) and for the installer tcmdr852x32_64.exe from my Windows 7 HP SP1 64-bit here at home. Apologies to all those who do not read German, the screenshots are in German. :oops:

Cheers,
Karl
User avatar
karlchen
Power Member
Power Member
Posts: 4603
Joined: 2003-02-06, 22:23 UTC
Location: Germany

Post by *karlchen »

Addendum:

Although no compatibility settings have been set for Total Commander 32-bit (or 64-bit) - at least I have found none - the phenomenon is related to totalcmd.exe here.
I just tested it:
  • Launched Total Commmander 8.52 32-bit and 64-bit.
  • Launched cmd.exe 32-bit (checked with Process Hacker it was the 32-bit cmd.exe, just to be sure)
  • Launched the combined installer tcmdr852x32_64.exe from inside cmd.exe and selected "update installation".
  • Result:
    Both Total Commander instances, 32-bit and 64-bit were closed, before actually copying the programme files.
  • Relaunched Total Commmander 8.52 32-bit and 64-bit.
  • Launched the combined installer tcmdr852x32_64.exe from inside totalcmd.exe (32-bit) and selected "update installation".
  • Result:
    Only the 32-bit Total Commander instancewas closed, before actually copying the programme files.
    Error message appeared that T.C. had not been closed.
  • Repeated the steps, again using 32-bit cmd.exe, and all went smoothly again.
  • Conclusion:
    The combined installer itself works as designed.
    There may be some (undetected) setting here that causes the problem.
    My search will go on ...
Post Reply