TC v7.04a unpacked executable

English support forum

Moderators: white, Hacker, petermad, Stefan2

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

Post by *ghisler(Author) »

Now it's available, thanks for reminding me!
Author of Total Commander
https://www.ghisler.com
theosdikaios
Senior Member
Senior Member
Posts: 228
Joined: 2006-02-04, 13:02 UTC

Post by *theosdikaios »

"Since there are many things which have never happened and never will happen,
and which nevertheless are clearly conceivable, and imply no contradiction,
how can one say they are absolutely impossible?" Leibniz
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 is - I have edited your post (removed the final dot after the URL) to make the download link work.
Author of Total Commander
https://www.ghisler.com
User avatar
sas2000
Power Member
Power Member
Posts: 682
Joined: 2003-02-07, 04:32 UTC
Location: Galiza

Post by *sas2000 »

 
V6.57 unpacked is available here :

https://plugins.ghisler.com/img/unpack32_657.exe
 
TW
Senior Member
Senior Member
Posts: 383
Joined: 2005-01-19, 13:35 UTC

Post by *TW »

licenced and happy TC user since 1994 (#11xx)
User avatar
sas2000
Power Member
Power Member
Posts: 682
Joined: 2003-02-07, 04:32 UTC
Location: Galiza

Post by *sas2000 »

 
2Christian

At http://www.ghisler.com/download.htm & http://www.ghisler.com/tcmd702a.md5 we can get the MD5 signature of current Tc version, may you post the MD5 signature of current&future unpacked versions on the same page or at http://www.ghisler.com/unpack32_702a.md5 ?, thanks.
 
 
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 don't think that this is necessary, because I'm hosting the unpacked version only myself (fileburst). The file is digitally signed by our certificate.
Author of Total Commander
https://www.ghisler.com
CCRDude
Junior Member
Junior Member
Posts: 26
Joined: 2007-10-01, 10:51 UTC

Post by *CCRDude »

Hmmm...

1. A digital signature can simply be removed, in which case Windows won't complain about a broken one. And the point imho was that one could accidently download something that has a completely different even, in which case your digital signature doesn't help in any way ;)

Instead of the MD5, you could post the signer name "C. Ghisler & Co." as well as the serial number (7d6d8a1ee5d08c18f072f8633139fb7a) which would allow anyway to verify the file by checking the signature you mentioned :)

2. I just downloaded unpack32_702a.exe - and receive an error message "The image file ... is valid, but is for a machine type other than the current machine". The file doesn't even have a valid PE header. Is it still a 16 bit executable maybe? That wouldn't run on 64 bit Windows any more (which only has a 32 bit compatibility layer).

3. If I uncompress the original myself by using the UPX command line, it'll close itself because it most possible has been corrupted by a virus.

4. I hate UPX - you get slightly less disk space used (where disk space is the cheapest part of the system), but every single instance if you're running multiple ones takes more memory (and even though memory is cheap, too, when I run multiple VMs at the same time, memory is a thousand times more precious than disk space). 1 MB saved on HD (or just 0.4 if the unpack32_702a.exe would be the size of the unpacked version), 3 MB wasted in memory.

5. Because of this problem, I wanted to try to edit the dialog resource to have a different position, but now can't, because I can't edit resources in a compressed file, and TC warns (see #3) as soon as the file is decompressed.

Can't run the decompressed version, can't run the version decompressed by myself :-(
User avatar
Lefteous
Power Member
Power Member
Posts: 9535
Joined: 2003-02-09, 01:18 UTC
Location: Germany
Contact:

Post by *Lefteous »

2CCRDude
You can alternativelly unpack the self-extracting archive inside Total Commnder by pressing Ctrl+PageDown.
User avatar
m^2
Power Member
Power Member
Posts: 1413
Joined: 2006-07-12, 10:02 UTC
Location: Poland
Contact:

Post by *m^2 »

CCRDude wrote:4. I hate UPX - you get slightly less disk space used (where disk space is the cheapest part of the system), but every single instance if you're running multiple ones takes more memory (and even though memory is cheap, too, when I run multiple VMs at the same time, memory is a thousand times more precious than disk space). 1 MB saved on HD (or just 0.4 if the unpack32_702a.exe would be the size of the unpacked version), 3 MB wasted in memory.
UPX increases memory usage only for a while. If it's needed, OS will swap unused pages out.
CCRDude
Junior Member
Junior Member
Posts: 26
Joined: 2007-10-01, 10:51 UTC

Post by *CCRDude »

Oh, come on... swap space is space as well, and swapping means that more time is wasted on disk I/O than would be when starting an uncompressed executable, so you don't even have the I/O advantage I've seen mentioned earlier any more.

Also, afaik multiple processes from an UPX executable are not able to share PE sections in memory (something provided by the loader), something that, if your linker supports it, can save a lot of additional memory when running multiple instances (doesn't look to be the case with TC, at least after a quick glimpse only). And that's an increase that no swapping will save you from.
User avatar
m^2
Power Member
Power Member
Posts: 1413
Joined: 2006-07-12, 10:02 UTC
Location: Poland
Contact:

Post by *m^2 »

CCRDude wrote:Oh, come on... swap space is space as well
Nope. It's usually on a hard drive. Hard drives are cheap. The file can be placed on a pendrive - which costs more.
And with slow pendrives / network shares you can get significant startup time improvement.
CCRDude wrote:swapping means that more time is wasted on disk I/O than would be when starting an uncompressed executable, so you don't even have the I/O advantage I've seen mentioned earlier any more.
But it happens only once / file execution. Anytime later, if page is read from a swap file - it would be read from a hard drive anyway.
CCRDude wrote:Also, afaik multiple processes from an UPX executable are not able to share PE sections in memory (something provided by the loader), something that, if your linker supports it, can save a lot of additional memory when running multiple instances (doesn't look to be the case with TC, at least after a quick glimpse only). And that's an increase that no swapping will save you from.
You are right, I forgot about it. But it's _usually_ a minor drawback (or not at all) - how many instances do you run simultaneously (on 1 machine)? I guess usually 1, rarely more than 2. With libraries - it's, of course, a different story.
gigaman
Member
Member
Posts: 131
Joined: 2003-02-14, 11:28 UTC

Post by *gigaman »

CCRDude wrote:2. I just downloaded unpack32_702a.exe - and receive an error message "The image file ... is valid, but is for a machine type other than the current machine". The file doesn't even have a valid PE header. Is it still a 16 bit executable maybe? That wouldn't run on 64 bit Windows any more (which only has a 32 bit compatibility layer).
The unpack32_702a.exe is not the unpacked TC executable itself, but rather a self-extractor (installer) for this file. Yes, this installer is 16bit... but as already said, you can unpack it from another TC instance using Ctrl+PageDown and extract the real (32bit) TotalCmd.exe file from there.
CCRDude wrote:5. Because of this problem, I wanted to try to edit the dialog resource to have a different position, but now can't, because I can't edit resources in a compressed file, and TC warns (see #3) as soon as the file is decompressed.

Can't run the decompressed version, can't run the version decompressed by myself :-(
The uncompressed file won't help you here - if you modify it (using a resource editor, for example), you'll receive a modification warning, just as when you unpacked the packed executable.
m^2 wrote:But it happens only once / file execution. Anytime later, if page is read from a swap file - it would be read from a hard drive anyway.
For swapping-in - yes. However, first you have to swap the pages out; in which case, they have to be written to disk for the compressed executable, but can be simply "forgotten" (no disk operation) for the uncompressed one because they already are on disk, in the original exe file (at least for read-only pages, which means 90% of TotalCmd.exe).
theosdikaios
Senior Member
Senior Member
Posts: 228
Joined: 2006-02-04, 13:02 UTC

Post by *theosdikaios »

2m^2
how many instances do you run simultaneously (on 1 machine)? I guess usually 1, rarely more than 2.
In my case at least 2: one as normal user, one as admin. IMHO compressed executables are obsolete on todays OS with its virtual memory manager and in normal cases an uncompressed exe is the better choice. :P
"Since there are many things which have never happened and never will happen,
and which nevertheless are clearly conceivable, and imply no contradiction,
how can one say they are absolutely impossible?" Leibniz
CCRDude
Junior Member
Junior Member
Posts: 26
Joined: 2007-10-01, 10:51 UTC

Post by *CCRDude »

@m^2: three instances are not rare. I like to keep them set to specific left-right situation (e.g. one for FTP, one with local and network drive backup folder opened, one for the folders I currently work with normally). Tabs are nice, but what I am missing are tab-combinations (change on left and right side according to presets), so I need instances ;)

Ok, three instances are about 9 MB of additional memory - not a huge thing really when modern machines have 1-2 GB. But if I use it on a Win95 machine (and since I try to keep all my applications backward compatible, I test there often) with 64 MB (that's the typical size I want my apps to be able to run on, and more creates problems in virtual machines), 3 MB of a single instance is 5%!
Or, when I started Vista and XP virtual machines, my 2 GB are reduced by 1 GB in an instant. With the system taking up more than 1 GB usually, that immediately forces some swapping. That means the swapping of TC happens exactly when I have to wait for all the other swappings anyway - all in a heap, where I don't like it ;)

Well, and I have to admit, it's also the old DOS programmers "small is beautiful" attitude - when you've coded software that is allowed a few 100 KB only, you just hate to see /any/ memory wasted ;)

@gigaman: yes, I've noticed that (warning when modifying file), so I've decided for a very small background app that looks for the queue window (window with class name 'DOWNDLGLIST2') and uses SetWindowPos to place it where I want. Problem solved :)

Anyway, I think the UPX discussion is an eternal one and people usually don't find common ground there, so as long as there is an unpacked one available somewhere, I'm happy :)
Post Reply