Geoff Chappell - Software Analyst
The main shell module (SHELL32.DLL) has so far existed in nine variations considered by Microsoft to have sufficient external impact to deserve at least a difference in the minor version number.
|3.51||Windows NT 3.51|
|4.0||Windows 95||Windows NT 4.0|
Windows Server 2003,
Windows Server 2008
No distribution with Windows, NT or Internet Explorer is shown for version 1.30 because all copies inspected were found on disks for other products (specifically, for Win32s as redistributed with various packages for Windows programming). Versions 1.30 and 3.51 predate my experience with 32-bit user-mode Windows and have been included in this study mostly for curiosity. They also predate what has become for most users the essential look and feel of Windows, i.e., the taskbar and Start menu. Yet these versions are 32-bit executables, they are named SHELL32.DLL (in contrast to the 16-bit SHELL.DLL), and there is demonstrable continuity.
Version 5.50 is omitted from the presumably authoritative review of shell DLL versions that Microsoft presents on the page Shell and Common Controls Versions in the MSDN Library. That page also says that “Version 5.0 of Shell32.dll will be distributed with … Windows Me”, and although it may be what was once planned, it is demonstrably not how the release turned out.
Though the next table fusses over such details as build numbers and dates, it is certainly not meant as a comprehensive list even of builds that had formal, public releases. For that, consult Microsoft, who manufacture the software and are surely best able of anyone to present a definitive record. Bear in mind, however, that if Microsoft’s published documentation could sensibly be relied on as either comprehensive or accurate, then you could not now be reading these notes.
Builds are arranged in increasing order of the file version as recorded in the executable’s resources. This version number is readily visible using Windows Explorer either in a so-called infotip for the file or by accessing the Version tab in the Properties dialog for the file. Programmers know this version number as coming from the so-called root block of the version-information resource, specifically from the dwFileVersionMS and dwFileVersionLS members of a VS_FIXEDFILEINFO structure.
The date stamp shown for each version is more obscure. File dates are easily modified after the executable is built and are anyway liable to be shown differently when read from different time zones. However, there is in each executable’s header a date stamp which is set when the executable is built and which is not commonly changed afterwards. It is readily accessible to anyone with programming knowledge and appropriate tools, e.g., Microsoft’s own DUMPBIN utility.
|File Version||File Header Date Stamp||Size||Package|
|220.127.116.11||30005119 (10th July 1995)||7,680||Win32s 1.30 (Win32 SDK)|
|18.104.22.168||304DF69E (7th September 1995)||7,680||Win32s 1.30 (Visual C++ 4.0, 4.1)|
|3.51.1016.1||2FC3DDD9 (25th May 1995)||53,520||Windows NT 3.51|
|22.214.171.1240||2FFB2FE3 (6th July 1995)||817,664||Windows 95|
|126.96.36.1991||320D0368 (11th August 1996)||819,200||Windows 95 OSR2|
|4.0.1374.1||31F95735 (27th July 1996)||1,275,664||Windows NT 4.0|
|4.0.1381.4||3361071D (26th April 1997)||1,277,200||Windows NT 4.0 SP3|
|4.0.1381.114||36233637 (13th October 1998)||1,278,736||Windows NT 4.0 SP4|
|4.0.1381.171||37016F3A (31st March 1999)||1,279,248||Windows NT 4.0 SP5|
|4.0.1381.332||37E7F162 (22nd September 1999)||1,280,272||Windows NT 4.0 SP6|
|4.71.1712.3||3421723C (19th September 1997)||1,362,704||Internet Explorer 4.0 (Windows)|
|342173A2 (19th September 1997)||1,689,872||Internet Explorer 4.0 (NT)|
|4.72.2106.4||3472465F (19th November 1997)||1,385,744||Internet Explorer 4.01 (Windows)|
|347247A2 (19th November 1997)||1,714,448||Internet Explorer 4.01 (NT)|
|4.72.3110.6||35474F66 (30th April 1998)||1,400,832||Windows 98|
|3553AA2E (9th May 1998)||1,388,816||Internet Explorer 4.01 SP1 (Windows)|
|3553AB82 (9th May 1998)||1,719,568||Internet Explorer 4.01 SP1 (NT)|
|4.72.3612.1700||36EEB3E5 (17th March 1999)||1,389,840||Internet Explorer 4.01 SP2 (Windows)|
|36EEB5AC (17th March 1999)||1,720,080||Internet Explorer 4.01 SP2 (NT)|
|3720A1D0 (24th April 1999)||1,400,832||Windows 98 SE|
|5.0.2920.0||3844D037 (1st December 1999)||2,352,400||Windows 2000|
|5.0.3103.1000||3947DFEF (15th June 2000)||2,358,032||Windows 2000 SP1|
|5.0.3502.5436||3D3D020D (23rd July 2002)||2,374,416||Windows 2000 SP3|
|5.0.3700.6705||3EF274DD (20th June 2003)||2,383,632||Windows 2000 SP4|
|5.50.4134.100||39403BE3 (9th June 2000)||2,281,472||Windows Me|
|6.0.2600.0||3B7DFE0F (18th August 2001)||8,322,560||Windows XP|
|6.0.2800.1106||3D6DFA23 (29th August 2002)||8,336,384||Windows XP SP1|
|6.0.2900.2180||411096B7 (4th August 2004)||8,384,000||Windows XP SP2|
|6.0.2900.5512||4802A111 (14th April 2008)||8,461,312||Windows XP SP3|
|6.0.3790.0||3E802496 (25th March 2003)||8,166,400||Windows Server 2003|
|6.0.3790.1830||424377D9 (25th March 2005)||8,379,392||Windows Server 2003 SP1|
|6.0.3790.3959||45D70ABB (18th February 2007)||8,359,936||Windows Server 2003 SP2|
|6.0.6000.16386||4549BDB4 (2nd November 2006)||11,314,688||Windows Vista|
|6.0.6001.18000||4791A73F (19th January 2008)||11,580,416||Windows Vista SP1
Windows Server 2008
|6.0.6002.18005||49E037EC (11th April 2009)||11,584,000||Windows Vista SP2|
|6.1.7600.16385||4A5BDB01 (14th July 2009)||12,866,560||Windows 7|
The two Win32s versions cited above have headers that are not entirely compatible with modern expectations, so that although a resource directory can be identified, and the build numbers found in the relevant structure, they are not found for display in the Windows Explorer (e.g., in an infotip).
For Windows Vista SP1 and Windows Server 2008, the binaries are identical, byte for byte.