Jump to content
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble

MSFN is made available via donations, subscriptions and advertising revenue. The use of ad-blocking software hurts the site. Please disable ad-blocking software or set an exception for MSFN. Alternatively, register and become a site sponsor/subscriber and ads will be disabled automatically. 


sp193

Shell 95 Update Project (SH95UPD)

Recommended Posts

Taskbar is broken in UberSkin since shl8.dll checks shell32 DllGetVersion. The different behavior with Win95 taskbar is one window message. You may fix it roughly by hexing out "DllGetVersion" string in shl8.dll.

Share this post


Link to post
Share on other sites

Windows 95 had this ability, but certain extra components had to be installed; For example: Internet Explorer 4.x/5.x.

You don't need to install programs. All that's needed is URL.DLL and an entry in ShellExecuteHooks. Netscape came with that file as well.

Share this post


Link to post
Share on other sites

@BenoitRen :hello:

aha !!! much thanks, that works quite well so far ! No more winshell98 !

I knew I used to be able to do this in 95, and I was just too lazy to try the obvious dll !

:thumbup

Now I will try Tihiy's fix, I agree that it's probably not shell behavior, just that confuses Uberskin as to which shell it's in...

I will be back, must restart machine after hacking Tihiy's excellent work. A sin really...

Share this post


Link to post
Share on other sites

:thumbup

Confirmed, the problem went away when I corrupted the DllGetVersion string from SHL8.DLL.

Thanks yet one more time, Tihiy!

Share this post


Link to post
Share on other sites

I don't seem to have IE6 anymore....is this by design? Launching doesn't cause an error, just nothing happens!!!

Also, now have installed latest Kex. This caused a problem launching mailto: protocols in KMeleon ( not up to date however, v1.13 ) i had to disable Kex for KMeleon. I wonder if this points to some incompatibility between SH95UPD and Kex ? Just llisting it to make a record of the info....

Best of luck on your exams !

Share this post


Link to post
Share on other sites
Taskbar is broken in UberSkin since shl8.dll checks shell32 DllGetVersion.

Yes, that's quite probable cause, since SHELL32 would now report itself not as version 4.0.x but 4.72.3612.

Now I will try Tihiy's fix, I agree that it's probably not shell behavior, just that confuses Uberskin as to which shell it's in...

I suppose that since 98lite/ROM/ROM2 users have the ability to install Uberskin, the programmers should detect and patch their program pior to installation. Otherwise I would have to rewrite the SHELL32 functions that cause that issue... which may break EXPLORER.exe.

I don't seem to have IE6 anymore....is this by design? Launching doesn't cause an error, just nothing happens!!!

That's NOT by design, and is certainly a problem!

IE6.0 SP1 is working properly for me, maybe you should first try to reinstall it(Run IEridicator 2001A, then reinstall IE6.0)? I've also install KEX 0.40 on my system, still no problems.

I am using a SHELL32.DLL version 4.0.1112, EXPLORER.exe 4.0.950 (But I also tried 4.0.951) and COMDLG32.DLL version 4.0.950. IE 6.0 is still working 100%.

I formatted my system last year, during the development of SH95UPD, and I did not have your issue; So I suppose that this incompatibility is not widespread.

Thanks for letting me know; It may actually be a highlight of a dawn of a new big error... XD

Also, now have installed latest Kex. This caused a problem launching mailto: protocols in KMeleon ( not up to date however, v1.13 ) i had to disable Kex for KMeleon

Yea, I also noticed that certain programs would crash (Illegal operation caused in UNICOWS.dll; The program I tested was FFDSHOW) if I don't disable KEX extensions.

Seems like the only proper way is that I somehow "integrate" KEX with SH95UPD properly, so that there won't be such a resource problem again... currently the only solution is that I don't ever link SHELL32.dll with UNICOWS.dll, or risk serious crashes with KEX is installed, hence all functions have to be UNICOWS-independent.

I wonder if this points to some incompatibility between SH95UPD and Kex ? Just llisting it to make a record of the info....

Yes there is. Originally, SH95UPD v0.0.7 was intended to have a much more robust unicode system(From KEX0.36a), but that conflicted badly with KEX. It seemed to be because UNICOWS was already loaded by KEX. (Hence all crashes would disappear with KEX extensions were disabled)

So I redesigned SH95UPD v0.0.7(The original and rev. A) pior to it's release to greatly reduce that side-effect, although I was cetain that I had totally resolved that issue beforehand... now I think that I'm wrong.

Best of luck on your exams !

Thanks!

BTW: Geocities SG would be going offline from 2009/010/26 onwards, hence my files would be unavailiable for a while. When my exams are over(In the 1st week of November), I'll upload them to my Linkbucks blog.

Edited by sp193

Share this post


Link to post
Share on other sites

Shell32.dll 4.00.1111

comdlg32.dll 4.00.951

Explorer.exe 4.00.950

somehow i doubt this is the problem...i think it lost some critical registry entry? bcuz it worked with these components earlier. i will try to "repair IE6" from the control panel....

Share this post


Link to post
Share on other sites

IE6 repair would not complete:

here's a screen shot of what IE6 repair reports.

so, I updated these .dll's from old backups and then ran repair.

unfortunately, repair completed without error but still same behaviour from IE6!

launch it and nothing happens. nothing!

somehow i don't think that sh95upd would mess with any of these files, i did update adobe reader from 6.0.1 to 6.0.6 which may have done this, but i doubt that, it has it's own copy of atl.dll in its folder.

i'm thinking that installing and then uninstalling Kex may have been the problem. and here's another weird thing, i have only one app that requires Kex so far, i uninstalled Kex, but now the app runs without it! seems like it didn't fully uninstall. i think i will post this to KEx forum 2moro and see if anyone can make sense of it.

don't want to reinstall ie6 if at all possible bcuz it needs so much patching...

post-115884-1256536775_thumb.jpg

Edited by snuz2

Share this post


Link to post
Share on other sites

SH95UPD v0.0.7A would only tamper with SHELL32.dll, and no other file.

Only those extremely old versions of SH95UPD (Like v0.0.1) would also tamper with KERNEL32.dll.

Shell32.dll 4.00.1111

comdlg32.dll 4.00.951

Explorer.exe 4.00.950

somehow i doubt this is the problem...i think it lost some critical registry entry? bcuz it worked with these components earlier. i will try to "repair IE6" from the control panel....

Your COMDLG32.dll is newer than mine. I never knew that there was a v4.00.951 (I want one! XD).

However, I have EXPLORER.exe 4.00.951 and SHELL32.dll 4.00.1112.

I won't rule out that there is a damaged/incorrect registry value issue here though.

don't want to reinstall ie6 if at all possible bcuz it needs so much patching...

I know what you mean.

Maybe this problem isn't really caused by KEX nor SH95UPD. What other modifications did you install?

I think that I also encountered something similar before, when Scandisk trashed all the long filenames on my PC(Including IE6's). The repair won't complete, even with SH95UPD v0.0.6 and KEX uninstalled(Not a system file problem, but just fails with no error I think...). So I had to format the entire installation...but I think that was more severe than your case.

However, I am not sure whether SH95UPD or KEX is really to blame for this as I only install/uninstall/reinstall IE6 without any modifications installed.

Can any other SH95UPD user confirm if this IS a real problem?

Offtopic: Maybe I should post links for SH95UPD to upgrade all their Win95 files... (Newer is better in this case)

For now, please search MDGx's site for updates.

Edited by sp193

Share this post


Link to post
Share on other sites

This just gets more and more interesting. Even though I uninstalled KEX a week ago, the program that depended on it still runs. Now, this app can update itself from the web, and did, so I assumed the newer version just did not require KEX ( the app is advertised to run on 98). The shell extension properties tags are gone, so I guess it's really uninstalled? I had almost forgotten about it, but read on...!! :blink:

Trying to find out what happened to IE6, I switched back to my W98 shell chubby configuration. Now IE6 will launch, I switch back to W95 sleek shell, no launch, back to 98, launch. Well, maybe it's my URL hook that keeps it from launching? No, setting it back to shell32 has no effect. In any case, it's the same URL hook for both shells. :hello:

Now it gets even weirder ! I try to uninstall SH95UPD, IE still doesn't launch, but - programs that depend on SH95UPD like adobe 6... wait for it ... yes! they still run as well ! Now, it is Halloween but I don't know what is haunting my box here !! Only thing I can say is that I Reshacked shell32.dll ( the 95 one ) after installing SH95UPD. I was getting rid of the annoying "Shortcut to %1.lnk" prefixing annoyance. Now, SH95UPD thinks it's uninstalled, but apparently still installed??? :unsure:

So, this is totally haunted machine !!! It seems that SH95UPD did not restore the old version, it's clearly my reshacked shell32.dll. So I manually switch back to original W95 shell file from CD. Okay, now Adobe 6 will not run. And, ... yes ... IE6 can launch. I install, SH95UPD and IE6 is dead again, uninstall, it's alive again. Iexplore.exe is version 6.00.2800.1106 btw. So, now some sanity returns here and it seems that Sh95UPD is somehow killing IE6 launch... sorry! :wacko:

Edited by snuz2

Share this post


Link to post
Share on other sites
Now, SH95UPD thinks it's uninstalled, but apparently still installed???

This means that "SH95UPD.dat" in your "X:\WINDOWS\SYSTEM" is missing/damaged. SH95UPD looks at that file and determines whether it's installed. Maybe I should implement a permanent version information function in SHELL32.dll like KUP did for KERNEL32.dll to prevent your issue from occurring again.

Iexplore.exe is version 6.00.2800.1106

I am using the same version.

So I manually switch back to original W95 shell file from CD. Okay, now Adobe 6 will not run. And, ... yes ... IE6 can launch.

This is adequate evidence that SH95UPD may be the root cause.

So, now some sanity returns here and it seems that Sh95UPD is somehow killing IE6 launch... sorry!

So that means that there IS still a major bug in SH95UPD.

However, I forgot to ask you earlier: how did you launch your IE6?

Is it:

1. Through the IE6 icon on your desktop (Actually a registry entry which was installed by the IE6 setup program)?

2. Through a shortcut on your desktop?

3. Through a Quicklaunch bar command (Leftover from the old Windows 98 shell)?

4. Through a shortcut from your Startmenu?

5. Launched directly?

If it's through an icon that was placed by IE6's install, then yea, there may be a bug (I can't verify that as the IE6 setup never creates that icon for me anymore after I deleted it, but I remember that it did work when I was developing older versions of SH95UPD). I launched my IE6 through a shortcut from my Startmenu.

Somehow, it seemed like after I added the ability for SHELL32 to return it's version, IE6's reaction to the version number actually varied.

When I got SHELL32 to return it's version as 5.10.2800 (Windows NT 5.1), all the icons in IE6 disappeared. When I set it to around 4.00, IE6 would display the IE startup logo (Windows 95 behaviour). If I set it to 4.72.3612, then I got Windows 98 behaviour. XD

Maybe SH95UPD isn't really ready to allow SHELL32.dll to return it's version as a v4.72 compatible...

Offtopic:

I am now upgrading my shell files to:

EXPLORER.exe -> 4.00.951

SHELL32.dll -> 4.00.1112 (No change)

COMDLG32.DLL -> 4.00.951

EDIT - I've finally uploaded a link on my Linkbucks blog. Check the first post of this thread for links

Edited by sp193

Share this post


Link to post
Share on other sites

I tried launching it from a shortcut and directly from IExplore.exe itself. No dice either way with SH95UPD, both works without it. I can't get ( and don't want) that desktop thing anymore either. Maybe you just need to find the magic version number to return that's high enough for 98 programs but low enough not to confuse IE somehow... or maybe we can find where IE stores this version string and hack it?

Or is using KEX with Sh95UPD enough to prevent this version aversion haha...anyway thanks again for help.

Share this post


Link to post
Share on other sites

Strange... you said that you tried to launch IE6 throgh a shortcut and directly.... but nothing happens?

I do that all the time, and it works perfectly.

After my "final" 2 papers (Tomorrow, there is actually one more but it's only MCQs), maybe I'll try to re-enact this issue which you've encountered.

I'll try to purge IE6 (with IEradicator 2001A), then reinstall it on top of a fully running system(WIth KEX and SH95UPD).

I'll let you all know what happens.

About the version number returned by SHELL32:

It returns it's version as 4.72.3612, which is Windows 98SE's SHELL32.dll version, so it should actually not really cause any problem with Win9x (And it didn't for me...yet).

Edited by sp193

Share this post


Link to post
Share on other sites
Your COMDLG32.dll is newer than mine. I never knew that there was a v4.00.951 (I want one! XD).

You can find it in the Windows 95 Service Pack 1 Update:

http://support.microsoft.com/kb/143003

ftp://ftp.microsoft.com/Softlib/MSLFILES/SETUP.EXE

However, I have EXPLORER.exe 4.00.951 and SHELL32.dll 4.00.1112.

Also just FYI, there's an unofficial v4.00.953 EXPLORER.EXE that incorporates Dr Hoiby's 256 Colour Icons patch:

http://www.mdgx.com/files/explor9x.php

http://www.mdgx.com/files/EXPLOR95.EXE

Hope your exams went well!

Share this post


Link to post
Share on other sites

@sp193:

I used SH95UPD to patch the 98lite Sleek-installed SHELL32.DLL, and then installed MDGx's 98SE2ME. Your patch made the workaround documented here unnecessary (it's about 3/4 down the page, under the text "replaces Windows 98 SE EXPLORER.EXE with older Windows 95/OSR2 version"). After applying your patch, I didn't need to swap EXPLORER.EXE for a later version in order to install 98SE2ME. The installation went without any important hitches (there was a WinOldAp error at the end of the extraction of ME files, which seemed to be a failure in the reboot routine. A manual reboot was all that was needed for the installation to continue as normal).

I hope that this is good to know. ;)

Thanks! :)

Edit: I confused SHELL32.DLL with EXPLORER.EXE. I've re-read your documentation. I slap my own wrists in your absence, sp193. :)

Edited by bristols

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...