Jump to content

Windows 95 shell update


Recommended Posts

This patched shell32.dll for Windows 95 (w/o Internet explorer shell update) adds some features I added to my custom Windows 98 (with Windows 95 Explorer) to the latest shell32.dll files (Microsoft Windows 95/95a OSR1/95B OSR 2.0/2.1 UNC Share SHELL32.DLL 4.00.955 Fix):

- Optional transparent desktop icons (labels) ;

[HKEY_CURRENT_USER\Control Panel\desktop]

"TransparentIcons"=dword:00000001 ; or 00000000 to disable

- Don't pretty filenames

- Reboot windows option instead of logging off (Previously you had to hold shift for the fast reboot; Resource modified with Hex Editor only, thus the new option has lots of trailing spaces)

Screenshot:

http://ctuser.net/other/win98pro/shell95patch_0503.png

Issues:

Tested with 4.00.1112 only, but both are quite similar, so 4.00.955 should work too.

Download:

http://ctuser.net/download.php?win98pro,sh...patch_0504a.zip

Installation:

In MS-Dos mode, replace shell32.dll with shell32.w95 / shell32.osr (check version numbers, 4.00.95* with shell32.w95 / 4.00.111? with 4.00.1112

Edited by Controller
Link to comment
Share on other sites


What's this "pretty" file names thing that's supposedly in Win95?

By default, shell32 from Win95 does not show the real filename for DOS filenames (max 8.3 and all uppercase) but lowercases all but the first character. Means e.g. MSDOS.SYS is shown as Msdos.sys.

Link to comment
Share on other sites

When renaming uppercase, it should renamed correctly, but shown with mixed cases in explorer. All uppercase may look ugly for ordinary windows users, but I rather prever seeing the real name (e.g. want some files to be all uppercase).

Link to comment
Share on other sites

  • 2 weeks later...
  • 4 months later...
Guest declassified

Nice!

Is it possible to use the Windows 95 shell on Windows 2k/XP? Would be nice as it probably is much lighter... :rolleyes:

Link to comment
Share on other sites

There are plenty of missing (shell folder stuff) and incompatible (SHGetSetSettings) exported functions in Windows 95 shell, and most 'undocumented' functions which are exported by ordinal only (*) are unicode on WinNT and ansi on Win9x.

On Win9x, you can use a shell32.dll wrapper which passes most functions through, and adds the missing ones (Actually what I'm doing). However, it internally still uses ansi? (shell uses plenty of OLE and therefore unicode, just who studies how far unicode is implemented), and you still need Windows 95 explorer.

On XP etc, I don't know about shell32 dependencies etc, I thought about that idea myself, however I don't use XP (long and failing installs, size, speed, ...). Maybe using Windows 2000 / NT explorer may speed up a bit (guess 2000er does not, and NT one's was buggy I heard?)

For the wrapper, I can provide some source in Flat Assembler. Guess any other language should do, if it can export functions by ordinal only (So Flat Assembler does not support this either when using the export macro)

Also gotta think about where to store (and which) resources, which make up most of the dll size

(*) Several of those functions are named in WinXP (SP?) and Vista; Using a wrapper for shell32, you may have to export both by ordinal and name, because GetProcAddress using ordinals fails on Windows 9x if the function is named.

Link to comment
Share on other sites

  • 2 weeks later...

By default, Windows 95 [shell] uses default folder icons for network sharings; After applying this 'patch', it will use a different icon, similar to Windows XP; As replacement icon we use icon #32, a tree icon which usage is uncertain [to me]. Patching consists of 1) hex editing shell32.dll to use this icon [iD] instead of the default folder icons, and 2) replacing the icon.

You need a resource modification tool

- http://angusj.com/resourcehacker

- http://hp.vector.co.jp/authors/VA003525/Eindex.htm )

and a hex editor

1) Hex editing:

For original shell95.dll, patch:

0005E324 from 03 to 29

0005E32C from 03 to 00

For OSR2 shell95.dll, patch:

0005E664 from 03 to 29

0005E66C from 03 to 00

2) Replacing the icon

Replace icon[group] 42 (tree icon) with the desired new one

Icons can be found here:

http://ctuser.net/download.php?win98pro,sh...sharingicon.zip

Screenshot:

http://ctuser.net/other/win98pro/shell95pa...sharingicon.png

Edited by Controller
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...