Shell Extensions for .NET Assemblies, Version 1.3.1976
Today I released version 1.3.1976 of my Shell Extensions for .NET Assemblies. This version adds support for Windows Me and fixes a few bugs to provide column handlers and overlay icons for Windows Me, Windows 2000, and newer.
Among the fixes was a crashing bug that occurred because of an access violation exception when sorting by the public key token column in Windows Explorer. Because IAssemblyInfo::IsAssembly may return S_FALSE the SUCCEEDED macro is hardly sufficient. A null BSTR was be assigned to VARIANT::bstrVal when VARIANT::vt was set to VT_BSTR. Thanks to Virtual PC 2004, base images of Windows Me and XP with Undo Disks enabled, and the native remote debugger installed on each it wasn’t hard finding the root cause of the problem.
To support Windows Me — the only 9x platform to support IShellIconOverlayIdentifier and IColumnProvider shell interfaces — simple string conversions were necessary since both implementations expect wide characters.
I hope you find these useful. I like to get a quick glance at what’s native and what’s managed these days and this is certainly a lot faster than seeing what will open in ildasm.exe.