Page 1 of 1
How to handle new unrar dll?
Posted: 2025-03-04, 08:40 UTC
by ghisler(Author)
As some may have noticed already, the RAR author has released a new version of unrar.dll which unfortunately only works on Windows 7 and newer. In the current version 11.51 of Total Commander, I'm using two unrar dlls:
1. unrar.dll/unrar64.dll 7.01 which is the official release by the RAR author and works on Windows XP and newer
2. unrar9x.dll 6.24 which I compiled myself and which works on Windows 95 and newer
Unfortunately I couldn't get unrar.dll 7.10 to work on Windows 9x because the sources use a lot of modern C++ constructs which the compiler for Windows 9x doesn't support. I managed to compile it to work on windows 2000, XP and newer, though. I also managed to unpack RAR archives with a modified tc7z dll on Windows 95 and newer.
This brings me to two dilemmas of what is more important:
Include the official unrar dlls which only work on Windows 7 or newer, or unclude self-compiled dlls?
Include the old unrar9x.dll which is outdated and may have security holes, but is only needed for older Windows versions, or use tc7z dll for RAR files on older Windows versions?
Re: How to handle new unrar dll?
Posted: 2025-03-04, 08:57 UTC
by KozakMak
2ghisler(Author)
its totally insecure to use end-of-life OS, you should drop them
Re: How to handle new unrar dll?
Posted: 2025-03-04, 09:48 UTC
by ghisler(Author)
It's not insecure to use end of life OS when it's not connected to the Internet. For example, while we still burned Total Commander on CDs we had a CD burning machine with auto disk loaded which needed Windows XP for drivers. This machine was not connected to the Internet, and the connection from my work PC to the CD burning machine was via a second network card in my PC, just to send data to that machine. There are still very expensive machines out there which are controlled with Windows 95 or even Windows 3.1...
Re: How to handle new unrar dll?
Posted: 2025-03-04, 09:52 UTC
by Horst.Epp
KozakMak wrote: 2025-03-04, 08:57 UTC
2
ghisler(Author)
its totally insecure to use end-of-life OS, you should drop them
That's not the point here.
As long as TC supports even XP
there must be a decision what unrar version should be provided.
Btw. RAR extraction is not the big security problem in using outdated OS versions.
Re: How to handle new unrar dll?
Posted: 2025-03-04, 11:11 UTC
by Dalai
2
ghisler(Author)
Here's my take on it. Since it's only a matter of time before someone complains that unpacking doesn't work, I suggest to make all DLLs available somehow and somewhere. Make it as easy as possible for users to swap the DLL.
- You could include the DLLs in the TC installer - maybe packed in a properly named ZIP archive - so the user has the option to swap the DLL(s) as necessary. This would also work offline which is nice.
- Include the official DLL (Win7+) and add a text file to the installer explaining what you've written above and link to your website so the user can download the DLLs and swap them as necessary.
Re: How to handle new unrar dll?
Posted: 2025-03-04, 11:49 UTC
by petermad
If the modified tc7z dll can unpack the same files as the official release of RAR 7.01, then I think that the modified tc7z dll should be the next unrar9x.dll
Re: How to handle new unrar dll?
Posted: 2025-03-04, 12:25 UTC
by Stefan2
I think, ship the newest DLL and an "unrarInfo.txt" (where you explain it) with the download and
provide the older version as an separate download for those who would need it. (as an fallback you could use 7z)
Re: How to handle new unrar dll?
Posted: 2025-03-21, 06:10 UTC
by tdklaus
My 2 cents:
you should not go for options 3+4 (self-compiled unrar.dlls). At least not for the default installation of TC. This would break the option of the user to, for whatever reason, exchange the unrar.dll with another official version from rarlab.
Of the proposals presented so far, I like @dalai's best - a repository in the form of a zip file which would allow the user to select, even to switch at runtime, which solution to use. As @dalai points out, this would work off-line (re: security of end-of-life OS) and also keep the user's choice to manually switch to another official unrar.dll (e.g. the latest beta for testing purposes).
Re: How to handle new unrar dll?
Posted: 2025-03-23, 09:03 UTC
by ghisler(Author)
you should not go for options 3+4 (self-compiled unrar.dlls). At least not for the default installation of TC. This would break the option of the user to, for whatever reason, exchange the unrar.dll with another official version from rarlab.
No, it wouldn't break that option: The user could still switch to the official dlls from Rarlab, but that would only work on Windows 7 and newer, so TC would then have to use the fallback dll (unrar9x or tc7z).
Re: How to handle new unrar dll?
Posted: 2025-03-23, 18:28 UTC
by j7n
Keep the distribution simple and compact with self-compiled DLLs. Avoid the need for people to research DLL versions. This not something that a user needs to undertand with other software. If the work of adapting the code has already been done, it seems like a no brainer. I think that recent additions to the format that need a new DLL, namely enormous dictionaries, are only possible on new computers with lots of memory.
Re: How to handle new unrar dll?
Posted: 2025-03-23, 21:11 UTC
by Sir_SiLvA
I voted for option "Include the official unrar dlls and extract RAR files with tc7z dll on Windows Vista, XP and older"
because this seems to be the least bother imho.