Jump to content

Welcome to MSFN Forum
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. This message will be removed once you have signed in.
Login to Account Create an Account



Photo

Shell 95 Update Project (SH95UPD)

- - - - -

  • Please log in to reply
85 replies to this topic

#1
sp193

sp193

    The fallen spartan

  • Member
  • PipPip
  • 141 posts
  • Joined 14-November 07
Shell 95 Update Project (SH95UPD)
-----------------------------------------------------


NOTICE 2009/12/24: SH95UPD v0.0.8 beta is now released.

NOTICE 2009/12/23: I think that this is very bad news... SH95UPD may actually become permanently dead under my programming and management...

My 8-year old second-hand PC has finally been replaced... as it has suffered another major failure this December (The RAM modules were not being properly detected by the Mainboard), but I managed to get it fixed (By luck. I really didn't swap anything). My father got me a new laptop... with Windows 7 on it. :(

Since I got a new system... the old, ailing PC has to go... soon.... although not yet.

I feel like re-writing SH95UPD into C, under Open Watcom C instead, to make it more sleeker... but I think that that may not be feasible.

NOTICE 2009/11/02: Geocities Singapore (The web host for my website) is now dead, and all links pointing there are dead.

Description:

This project implements functions not found in the windows 95 shell but present windows 98, allowing the users of 98lite (sleek),
ROM, ROM2 to be able to once again run programs that would only work with the Windows 98 shell and not with the windows 95 shell.

SH95UPD is based on the KernelEX project, and is basically a stripped down version of KernelEX.
Currently it only tampers with Shell32.dll, adding functions present from the IE4 shell update to it.

This project neither requires nor includes files from Windows 98, and does not distribute any copyrighted files.


It is designed so that KernelEX(And similar software) can be installed over it, with almost no loss of functionality.

Starting with the Release candidate v0.0.2B, the SH95Version function is no longer included. Hence Kernel32.dll is now unpatched.

If you are installing SH95UPD v0.0.8 over a system with an older version of SH95UPD, please uninstall the older version before proceeding.

Please note that you would still need to hex edit DESK.cpl and replace all occurances of SHELL32.dll with SHELL32.w98 (Or the name of your Win98 SHELL32.DLL).
This problem seems to be a fault with 1 of the Win95 SHELL32.dll's internal functions, and is currently being addressed.
However, this should be the *only* file you would ever need to hex edit again.

SH95UPD v0.0.6 is the last build of SH95UPD to be based on KernelEx 0.32a, while newer builds are now based on KernelEx 0.36.

This version of SH95UPD, v0.0.8, has major core changes from v0.0.7A. However, it may possibly have many new bugs.
Please discuss any "new" bugs introduced in v0.0.8(Crashes or unusual behaviour that were not present before installing SH95UPD v0.0.8) at the SH95UPD thread at the MSFN forums.

All the binary files provided in this released have been pre-compressed with UPX.

UPDATE 2009/12/24:
IMPORTANT! SH95UPD v0.0.8 has some extreme core changes done to it (View the changelog for details).
Hence you can consider it to be a "Ultra Beta", a much bigger beta than v0.0.7 when it was initially released.

Frankly, I have not really heavily tested this, but I have yet to encounter any flaws. Please report any _new_ crashes you may encounter.

***PLEASE READ THE README FILE CAREFULLY***

Credit goes to Xeno86 and (x).

Requirements:

- Windows 95, Windows 98 Standard Edition, Windows 98 Second Edition or Windows Millienium
- Any locale and kernel version
- Windows 95 Shell (Any version, but must be from a pre-OSR2.5(Pre-Windows 95C) Windows 95 build) already installed and working

Thank you all SH95UPD users for your support.

SH95UPD
New project homepage (Lists all SH95UPD related posts):
http://ysai187.blogs...upd-projects-2/

The latest version is v0.0.8, and latest stable version is v0.0.7A.

The link to the homepage below got changed somehow... please update your links.

Check the home page for more information and for the latest stable releases, release candidates, source code and tools.


Tools for new SH95UPD users:

Quicklaunch replacement for Win95 shell users: http://www.msfn.org/...mp;#entry463508

IEridicator 2001 and IEridicator 2001A: http://www.litepc.com/ieradicator.html

Please avoid hot-linking directly to the files as the file names will change over time.
--------------------------
Rejoice 98lite users!!! :thumbup

A Merry Christmas and a Happy New Year to the MSN community!

Edited by sp193, 24 December 2009 - 12:26 PM.

SPARTAN-193: Don't leave me behind Master Chief!


How to remove advertisement from MSFN

#2
patchworks

patchworks

    Member

  • Member
  • PipPip
  • 249 posts
  • Joined 09-May 05
  • OS:Windows 7 x64
  • Country: Country Flag

Credit goes to Xeno86 and (x).

So it's GPL too, right ?

Then check out this 3ad where i posted many interesting open source links... :thumbup

#3
sp193

sp193

    The fallen spartan

  • Member
  • PipPip
  • 141 posts
  • Joined 14-November 07
Actually, I am not very sure... I am not very sure whether KernelEX's GPL licence still applies for SH95UPD, so I left it in the source code, and it does not contain any copyrighted files.

Feel free to comment on the project though, although it may not be as good as KernelEx due to my lack of experience...

Anyway, I hit a snag while programming and I think that it will take a while to fix....as it appears to be a bug in the KernelEx 0.3.2a source code (I cannot import shlwapi.dll for the functions).

I am thinking of including an "Upgrade mode".... what do you think about that?

Please post here whether there are any problems running/installing SH95UPD.

Any suggestions are welcomed.
SPARTAN-193: Don't leave me behind Master Chief!

#4
patchworks

patchworks

    Member

  • Member
  • PipPip
  • 249 posts
  • Joined 09-May 05
  • OS:Windows 7 x64
  • Country: Country Flag

I am not very sure whether KernelEX's GPL licence still applies for SH95UPD, so I left it in the source code, and it does not contain any copyrighted files.

Ensure yourself by releasing it under GPL, then ! :yes:

After that, you can "grab" ideas/features/codes from other open source Windows shells, expecially this one. :wub:

...and here's a couple of open source theming links to explore (for a possible integration):
  • ShellWM, Windows skinning application to be used with a Win32 Shell replacement (like Litestep, geOshell, sharpE, etc.) or just native Explorer;
  • CustomEyes changes most of the programs graphic components: the menus, the buttons, the borders...

Last but not least keep in consideration to join the Win9x Developer team ! :hello:

#5
Sebijk

Sebijk

    Newbie

  • Member
  • 12 posts
  • Joined 18-April 08
  • OS:none specified
  • Country: Country Flag
Does not work on Windows 95, because the Patching fails on kernel32.dll.

#6
sp193

sp193

    The fallen spartan

  • Member
  • PipPip
  • 141 posts
  • Joined 14-November 07
What version of Windows 95 were you using? (Windows 95, Windows 95B...etc) And did you apply all availiable system updates from Microsoft? What was the error you received (can you give more details?)?

Anyway, did anyone have the "Cannot Launch Program" problem after rebooting after installing SH95UPD?

Edited by sp193, 02 May 2008 - 07:02 PM.

SPARTAN-193: Don't leave me behind Master Chief!

#7
Marius '95

Marius '95

    Member

  • Member
  • PipPip
  • 122 posts
  • Joined 12-January 06
  • OS:95
  • Country: Country Flag
I just installed SH95UPD and :w00t: ! What a speed! Not just the shell is faster, but all programs!

Just one little problem...
ATI Advanced Properties Page doesn't load. I think it's because DllGetVersion is missing from SHELL32.DLL.

#8
sp193

sp193

    The fallen spartan

  • Member
  • PipPip
  • 141 posts
  • Joined 14-November 07
Hmm, good to hear that the win95 shell works for you! I am currently trying to implement functions like DllGetVersion, DllInstall, etc in v0.0.4.

Well, I think that the missing DllGetVersion function may not be the problem. As a temporary fix, try hex editing the .cpl file for the ATI Advanced Properties Page and replace all instances of shell32.dll with shell32.w98 (or the name of your Windows 98 SHELL32.dll).
SPARTAN-193: Don't leave me behind Master Chief!

#9
Marius '95

Marius '95

    Member

  • Member
  • PipPip
  • 122 posts
  • Joined 12-January 06
  • OS:95
  • Country: Country Flag
Ah, the old trick from 98lite. :) I thought I didn't need Win98 SHELL32.DLL any more...
Will try. Thank you.

#10
Marius '95

Marius '95

    Member

  • Member
  • PipPip
  • 122 posts
  • Joined 12-January 06
  • OS:95
  • Country: Country Flag
I edited desk.cpl and it works properly now.

This is the private message I received. I hope you don't mind if I answer here.

Hi,
As I do not have an ATI graphics adapter, I cannot replicate your problem easily. However, would you mind sending me a copy of the ATI Advanced Properties Page .cpl file so that I may try to fix your problem?
-SP193

My bad english caused confusion. :(
It is not a separate .cpl file. ATI tabs are added to the Advanced Properties page in Display Properties. Without editing desk.cpl, these tabs do not appear and when I try to close Advanced Properties there is an error: RUNDLL32 caused an invalid page fault in
module <unknown> at 0000:7469726f.
Is there anything else I can do?

Edited by Marius '95, 06 June 2008 - 01:34 AM.


#11
sp193

sp193

    The fallen spartan

  • Member
  • PipPip
  • 141 posts
  • Joined 14-November 07
Hmm, then I think that there is nothing much that can be done about this as the flaw.

There is a seperate .cpl file for the ATI display properties (eg It is nvcpl.cpl for NVidia) which is being loaded by Desk.cpl (or Deskcp16.dll), but is most probably not being displayed due to a incompatibility between the Win95 SHELL32.DLL and the Win98 desk.cp, therefore causing the crash you observed when you closed the advanced properties page.

The file desk.cpl would most probably need to be corrected (Possibly almost impossible?), as it is incompatible with the Win95 SHELL32.dll. As a temporary fix, hex edit the desk.cpl file, replacing all instances of shell32.dll with shell32.w98 (or the name of your Windows 98 shell32.dll file).

Your English is not bad, it is just that when you said that the ATI display properties page did not work, I assumed you ment that nothing happened when you clicked on a button on the ATI display properties page.

Edited by sp193, 07 June 2008 - 11:53 AM.

SPARTAN-193: Don't leave me behind Master Chief!

#12
Marius '95

Marius '95

    Member

  • Member
  • PipPip
  • 122 posts
  • Joined 12-January 06
  • OS:95
  • Country: Country Flag
Can you add SHGetDataFromIDListW ?
Abby FineReader 8 needs it.
Thank you.

#13
sp193

sp193

    The fallen spartan

  • Member
  • PipPip
  • 141 posts
  • Joined 14-November 07
SHGetDataFromIDListW is already in the v0.0.4 informal release as an alias to SHGetDataFromIDListA. Should work, at least for me, but let me know if it does not.
SPARTAN-193: Don't leave me behind Master Chief!

#14
Marius '95

Marius '95

    Member

  • Member
  • PipPip
  • 122 posts
  • Joined 12-January 06
  • OS:95
  • Country: Country Flag
Thank you.
I didn't notice the new version. :whistle:

#15
Controller

Controller

    Newbie

  • Member
  • 49 posts
  • Joined 09-April 05
Any usage for the shell32.dll source code ( http://www.ctuser.ne...504a_source.zip )
from this project:
http://www.msfn.org/...98-t120443.html
It's Flat Assembler, update the include path in line 4 and ready to compile (Ctrl+F9)

#16
sp193

sp193

    The fallen spartan

  • Member
  • PipPip
  • 141 posts
  • Joined 14-November 07
Thanks, the code may be of use, would certainly make work easier for me, but I was wondering, isn't it illegal to do a direct disassembly of SHELL32.DLL, and distribute it?
SPARTAN-193: Don't leave me behind Master Chief!

#17
Controller

Controller

    Newbie

  • Member
  • 49 posts
  • Joined 09-April 05
You can skip those :)
They are comment with W98 etc, mostly stubs and not very optimized anyway. Feel free to PM me for questions to specific functions.

#18
Controller

Controller

    Newbie

  • Member
  • 49 posts
  • Joined 09-April 05
You can leave those :)
They are comment with W98 etc, mostly stubs and not very optimized anyway. Maybe I'll replace them occasionally.
My proplem is mostly to find an application to test the apis, or write my own testing app.
Feel free to PM me for questions to specific functions.

#19
sp193

sp193

    The fallen spartan

  • Member
  • PipPip
  • 141 posts
  • Joined 14-November 07
I do not know if this problem only applies to my computer, but did anyone else experience problems with Internet Explorer 6 after installing SH95UPD v0.0.4? The button icons disappear, but the browser appears to still function properly...

Edit: I'll remove the SHFlushSFCache function, as it seems to be the cause of the problem.

Edited by sp193, 19 July 2008 - 11:22 AM.

SPARTAN-193: Don't leave me behind Master Chief!

#20
Sebijk

Sebijk

    Newbie

  • Member
  • 12 posts
  • Joined 18-April 08
  • OS:none specified
  • Country: Country Flag

What version of Windows 95 were you using? (Windows 95, Windows 95B...etc) And did you apply all availiable system updates from Microsoft? What was the error you received (can you give more details?)?


I use Windows 95 C (without Internet Explorer 4 and the Active Desktop). I have all availiable system updates from Microsoft installed.

The latest version of SH95UPD works fine :).

Edited by Sebijk, 05 September 2008 - 05:52 AM.


#21
sp193

sp193

    The fallen spartan

  • Member
  • PipPip
  • 141 posts
  • Joined 14-November 07
Good to know that that it works, I may even extend SH95UPD to provide Kernel updating functionality like KernelEX for Windows 95 though... Thanks to all of SH95UPDs users and testers, but there would not be any more updates until somewhere in late October as I would not have access to my terminal. Very sorry for the inconvenience... :(

However, please continue to post here what functions that are still missing and I will try and see whether I can implement them once I regain access to my terminal after my End of Year examinations.

Edited by sp193, 29 September 2008 - 06:26 AM.

SPARTAN-193: Don't leave me behind Master Chief!

#22
os2fan2

os2fan2

    Advanced Member

  • Member
  • PipPipPip
  • 421 posts
  • Joined 09-September 04
LitePC (the makers of 98lite), did a version of the 95 shell for Windows 98.

It is basically a hack of the 95 shell, with win98 bitmaps, and a hack to use a renamed shell32.dll

it's called 'sleekv2.zip'.

#23
sp193

sp193

    The fallen spartan

  • Member
  • PipPip
  • 141 posts
  • Joined 14-November 07
Well, no. Sleekv2 actually causes the win95 explorer to use SHELL32.W95(win95 shell32.dll renamed) instead of shell32.dll. The shell32.dll in the SYSTEM is then actually a win98 shell32. The win95 shell32 icons are unaltered by sleekv2, but explorer now looks for them in SHELL32.DLL(win98) not SHELL32.w95(win95 shell32), and is not an ideal solution as it may cause crashes(in explorer & other programs). That's why I created SH95UPD, to resolve the win95 shell32 missing exports problem, so that the win98 shell32 is no longer needed (Or at least reduce compatibility problems with other 3rd party programs.)

Resource hack shell32 to add the win98 icons.

Edited by sp193, 18 March 2009 - 12:04 AM.

SPARTAN-193: Don't leave me behind Master Chief!

#24
betaluva

betaluva

    Newbie

  • Member
  • 40 posts
  • Joined 21-October 03
any chance you can make my computer look better? i hate those ugly old big square tool buttons!

#25
sp193

sp193

    The fallen spartan

  • Member
  • PipPip
  • 141 posts
  • Joined 14-November 07
OK, for those who haven't heard - SH95UPD's development will have to be halted until late 2009(September-November?) as I would be taking one of my biggest examinations in my life which would affect my future(GCE 'O' levels)....

However, SH95UPD isn't dead, it would just lie dormant for about 7 months...

Anyway, for those who want the quick launch under the Win95 shell -> http://www.msfn.org/...p...st&p=463508

For those who want to remove Internet Explorer, use IEradicator: http://www.litepc.com/ieradicator.html
*Note: IEradicator may remove files that are part of IE that may still be needed by certain programs(Like urlmon.dll). However, you can always re-extract them from your Windows98 installation disk. Also, some programs may check for an installed version of IE(Like MSN messenger)

Fix for IE version checking programs(Note that it's case sensitive):

Open REGEDIT and browse to "HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer". In this key, create the string value named "Version" and give it the value "9.99.9999.9"

I wanted to find the shellswap script (Automatically swaps the Win98 shell for the Win95 shell) and post a link here, but I can't read my old backup diskettes from my WinXP installation...I'll see what I can find and upload next time...

I have already uploaded the source code for SH95UPD v0.0.5. It's a rushed release so there isn't any documentation and may have problems. However, it's very similar to KernelEx...

Meanwhile, please POST HERE what are the currently missing functions from the Win95 shell, so I can resume SH95UPD's development after September...

@betaluva: You can't really change the button's shape, but you can replace the icons with something more stylish using a resource editor like Reshack...

I DO know several functions that are currently missing/not 100% implemented:

SHGetNewLinkInfo
From an old thread: http://www.msfn.org/...opic=51521&st=0
ExtractIconExW
Shell_NotifyIconW

Anymore functions to add? There ARE people who still use the Win95 shell right? =D

Edited by sp193, 20 March 2009 - 08:24 PM.

SPARTAN-193: Don't leave me behind Master Chief!




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users