bristols, on Aug 24 2007, 03:35 PM, said:
- ASYCFILT.DLL 2.40.4528 > 2.40.4530
- OLEPRO32.DLL 5.0.4528 > 5.0.4530
- OLEAUT32.DLL 2.40.4522 > 2.40.4519
Thanks for testing those newer OLE files. But could you tell me why OLEAUT32.DLL was downgraded?
Hi, bristols! erpdude8 is right: oleaut32.dll 2.40.4519 *is newer* than 2.40.4522!
This is just a versioning conundrum caused by M$ habit of late of releasing parallel series of updates starting at different versions for different OSes. But it can be solved, in the case of PE executables like oleaut32.dll, by looking at the file compilation dates (aka PE Timestamps, which are MUCH more stable, becuse they're tucked away in the PE header, than common file dates, which reside in the directory entry an can change easily). To see the compilation dates in readable format one must use MiTeC EXE Explorer
, or PEDUMP.EXE by Matt Pietrek
, a somewhat more technical console app. For the latter, try <pedump filename.dll | find /i "timedatestamp"> and consider the first value listed (the others are usually zero, anyway, because it tries to get the PE Timestamps of the .dll dependencies and fails silently... yes, they are the result of a bug...). I've compiled a list, for some versions of oleaut32.dll, so here is it:
Versions of oleaut32.dll known to work with Windows 9x/NT4/ME
PE Timestamp 04/23/1999 16:37:36 V. 2.40.4275.1
PE Timestamp 08/31/1999 23:15:11 V. 2.40.4277.1
PE Timestamp 05/04/2001 21:34:09 V. 2.40.4517.0
PE Timestamp 03/16/2001 23:09:34 V. 2.40.4518.0
PE Timestamp 07/31/2006 18:12:40 V. 2.40.4519.0
PE Timestamp 06/20/2003 02:43:41 V. 2.40.4522.0
Of course, if one knows from which packages or updates those files came, and their relative release dates, it should not be necessary to go for the PE Timestamps, but that is not always the case. But I don't think the existence of PE Timestamps is very widely known, and this is a good exemple to show their utility. Too bad only PE executables (sometimes referred to as Win 32 executables), among all possible types of executables present in the Windows OSes carry their compilation date inside. Then again, they are becoming more and more the standard for .exe, .dll, .ocx and .tlb, and that is good news!
In a nutshell, changing oleaut32.dll from v. 2.40.4522.0 to v. 2.40.4519.0, despite all the apearances, *is an upgrade*, not a downgrade! HTH
<Additional musings... It seems there always IS something more to be said
Relevant files found in VB6-KB924053-x86-ENU.exe, having internal name oleaut32.dll
PE Timestamp 07/11/2006 07:19:34 V. 2.40.4531.0 Size: 631,053 bytes Name: oa2k.dll
PE Timestamp 07/31/2006 18:12:40 V. 2.40.4519.0 Size: 626,960 bytes Name: oant4.dll
PE Timestamp 07/31/2006 18:43:21 V. 2.40.4519.0 Size: 626,960 bytes Name: oant4ts.dll
oa2k.dll was tested by erpdude8 and by MDGx, and both found it's unsuitable for use with Win 9x/ME. So I didn't test it myself but I mention it here because its version number indicates it's presently the most up-to-date version of oleaut32 in the series 4522 .... 4531, that M$ intended for Win 2k. Of these only 4522 does work with Win 9x/NT4/ME.
Now, oant4.dll and oant4ts.dll, despite having the same version number and the same size, are a long way from being the same file, because they exhibit 27,906 differences in a direct binary compare. They are both intended by M$ for NT4 systems, but oant4ts is for NT4 *Terminal Server*, which, in IMHO, is much more different from Win 9x/ME than plain-vanilla NT4, so I decided the right file to pick would be oant4.dll, which I've been using, renamed to oleaut32.dll, in my system, for some time now, without any problems. I do believe erpdude8 reasoned along these same lines to select which of the 4519 files that he tested and found it works OK. I've checked the oleaut32.dll that is inside the Unofficial 98fe SP v2.2.0
, he has just released. It is the same oant4.dll that I'm currently using, from its PE Timestamp.
Now, the 4519 files are the latest in the series 4275....4518, which M$ had stopped updating for some time, but since they were released in the same update pack as 4531 I took it to mean, to me at least, that they are equivalent from the hotfix point-of-view, both being the most up-to-date at the moment, the main difference being that 4519 lacks the Win 2k specific features present in 4531, most possibly *the features* that render 4531 unusable with Win 9x/ME. Of course, this last comment is just my opinion, so YMMV.