Help - Search - Members - Calendar
Full Version: Shell 95 Update Project (SH95UPD) v0.0.7A Update
MSFN Forums > Microsoft Software Products - Discussion & Support > Windows 95/98/98SE/ME > Windows 9x Member Projects
Pages: 1, 2

   


Google Internet Forums Unattended CD/DVD Guide
sp193
Shell 95 Update Project (SH95UPD)
-----------------------------------------------------


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

NOTICE 2009/08/27:
There is a major problem with SH95UPD v0.0.7. Certain dialogs in Firefox 2.0.0.20 would break. SH95UPD v0.0.7A should have that fault fixed. (Caused by a faulty SHGetSPecialFolderPathA implementation)

Description:

This project implements functions not found in the windows 95 shell from 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.

Currently is only tampers with SHELL32.DLL, making it more "Windows 98 compatible".

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

It is designed so that KernelEX can be installed over it.

Note: Installing this patch over a system without a Windows 95 shell should not have any effect.

Please uninstall any existing versions of SH95UPD/KernelEX before re-installing/upgrading.

Starting from SH95UPD v0.0.7, the KernelEx 0.3.6a architecture is now used. v0.0.7 is a real "prototype" as is has many new functions, hence is a breeding ground for bugs. However, it hasn't caused any problems on my system so far...


***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 Millenium Edition
- Any locale and build version
-Windows 95 shell (Any Version, but must be pre-OSR2.5)
*Windows 95 is untested.

Thank you all SH95UPD users for your support.

SH95UPD
New project homepage (Lists all SH95UPD related posts):
http://ysai187.blogs.linkbucks.com/categor...95upd-projects/

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

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

Quicklaunch replacement for Win95 shell users (Link fixed)

Please avoid hot-linking to the files as the file names will change over time.
--------------------------
Rejoice 98lite users!!! thumbup.gif
patchworks
QUOTE (sp193 @ Apr 26 2008, 06:50 PM) *
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.gif
sp193
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.
patchworks
QUOTE (sp193 @ May 2 2008, 06:10 AM) *
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.gif

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

...and here's a couple of open source theming links to explore (for a possible integration):
  1. ShellWM, Windows skinning application to be used with a Win32 Shell replacement (like Litestep, geOshell, sharpE, etc.) or just native Explorer;
  2. 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 ! welcome.gif
Sebijk
Does not work on Windows 95, because the Patching fails on kernel32.dll.
sp193
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?
Marius '95
I just installed SH95UPD and woot.gif ! 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.
sp193
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).
Marius '95
Ah, the old trick from 98lite. smile.gif I thought I didn't need Win98 SHELL32.DLL any more...
Will try. Thank you.
Marius '95
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.
QUOTE
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. sad.gif
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?
sp193
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.
Marius '95
Can you add SHGetDataFromIDListW ?
Abby FineReader 8 needs it.
Thank you.
sp193
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.
Marius '95
Thank you.
I didn't notice the new version. whistling.gif
Controller
Any usage for the shell32.dll source code ( http://www.ctuser.net/download.php?win98pr...504a_source.zip )
from this project:
http://www.msfn.org/board/Windows-95-shell...98-t120443.html
It's Flat Assembler, update the include path in line 4 and ready to compile (Ctrl+F9)
sp193
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?
Controller
You can skip those smile.gif
They are comment with W98 etc, mostly stubs and not very optimized anyway. Feel free to PM me for questions to specific functions.
Controller
You can leave those smile.gif
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.
sp193
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.
Sebijk
QUOTE (sp193 @ May 2 2008, 09:53 AM) *
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 smile.gif.
sp193
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... sad.gif

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.
os2fan2
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'.
sp193
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.
betaluva
any chance you can make my computer look better? i hate those ugly old big square tool buttons!
sp193
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/board/index.php?s=&...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/board/index.php?showtopic=51521&st=0
ExtractIconExW
Shell_NotifyIconW

Anymore functions to add? There ARE people who still use the Win95 shell right? =D
snuz2
I'm still using it !!! Haven't had a chance to try your extension yet...

Good luck on your examinations.
sp193
QUOTE
Good luck on your examinations.

Thanks, snuz2.

Ok, I thought of doing a quick update on my slight progress(Slowly and quite poor I'm afraid)

I now have a private(buggy) build of SH95UPD(v0.06) that fixes the following(Or supposed to):

-Desk.cpl no longer needs to be hex-edited for it to work (Shell32 Ordinal 194 was relocated, replaced with the Win98 function SHCreatePropSheetExtArrayEx in its place, credit goes to Controller for supplying me with critical information)
-SHELL32.dll would now report itself as Shell32.dll 4.72.3612 (Hence no more programs complaining that shell32 is too old/identifying it as v4.00)
-DllGetVersion now has less redundant code
-SHGetNewLinkInfo is now an alias of Shell32 Ordinal 179 (Hence a proper, 100% working implementation)
-SHGetSpecialFolderPathA/SHGetSpecialFolderPathW are aliases of Shell32 Ordinal 175 (Less redundant code)
-SH95UPD's main executable is now UPX'ed (Hence reduced from ~80KB to ~40KB!)
-More redundant code from the main executable is also removed (some leftover functions from KernelEx)

Note: Please do NOT ask me for this private build(yet) as it may crash(Or cause damage to) some parts of your system(It still has large amounts of new, untested "technology")

However, a few new snags were hit, as I needed to add a new import to shell32.....(KernelEx 0.32a doesn't have that function, hence a switch to KEX 0.36 is necessary(Or a major rewrite is required)).

-SP193
patchworks
QUOTE (sp193 @ Apr 26 2008, 06:50 PM) *
Shell 95 Update Project (SH95UPD)
-----------------------------------------------------


Description:

This project implements functions not found in the windows 95 shell from 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.

This could be an official KerlenEx "plugin" then...

QUOTE (sp193 @ Apr 26 2008, 06:50 PM) *
SH95UPD is based on the KernelEX project.

Currently is only tampers with SHELL32.DLL, making it more "Windows 98 compatible".

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

Cool, but you must be more clear about licensing (GPL) on your website.

Even better: whay don't you get a sourceforge/savannah/freshmeat/berlios/Google Code page ?

QUOTE (sp193 @ Apr 26 2008, 06:50 PM) *
/* EDIT 2009/03/18 */
***PUBLIC ANNOUNCEMENT***

- Ok, firstly, I apologize. As somewhere near September this year I will be taking one of the most important Examinations of my life, I will have to halt the development of SH95UPD(Until late 2009?). I would try to release the source soon, but I can't say when exactly(May be very late in the year). Although development is now halted, please continue to post suggestions here.

The source code is now released, but since it is a rushed release, please post any problems found here.

Getting an account on some of thoose open source projects hosting services could bring more developers that may help your project growth.

Last but not least remember that GPL forces derivative works (as yours) to release the sources, or you could be irregular or license violator...
sp193
QUOTE
This could be an official KerlenEx "plugin" then...

Well, maybe, but SH95UPD wasn't designed to be a plugin for KernelEx, but rather sit under KernelEx without KernelEx knowing that the SHELL32.DLL it is using is actually v4.00

However, it is possible, if you merge the patch codes of SH95UPD and KernelEx together as one....

QUOTE
Cool, but you must be more clear about licensing (GPL) on your website.

Ok, I'll make it a point for me to state that on my page during my next update.

QUOTE
Getting an account on some of thoose open source projects hosting services could bring more developers that may help your project growth.

Well, I'd rather keep this project small, but I welcome anyone else to modify the code and post any better versions here.

PS Update: I've managed to port KernelEx v0.36 code for this project, but the executable is huge(~170KB, compared to ~90KB).

New features of upcoming SH95UPD v0.0.7(Or rather new proposed features from v0.0.6):
-KernelEx 0.3.6 based
-Seperate uninstaller program programed under OpenWatcom(Resulting in a smaller footprint on systems after installation compared to it's predecessors)
-Smaller patch code, but now Shell32.dll would be linked to shlwapi.dll like shell32. v4.7x

SH95UPD v0.0.6 is the last build based on KernelEx 0.32a, and I may clean up the code and try to release a new beta update(Update to the aging v0.0.5!) ASAP....(Check the project page for updates!)

I know that it's bad posting many updates without posting a working executable, but I now cannot upload any of the new builds(v0.0.6/v0.0.7) as there are many bugs(Like after injecting new code for Ordinal 194, KernelEx would "break" shell32.dll, and the unpatched desk.cpl is still not working properly(Linked to ordinal 194))

The next update when I can really promise the MSFN community a new build is after my October GCE 'O' level examinations...
Advanced User
QUOTE (sp193 @ Sep 13 2008, 07:20 AM) *
Good to know that that it works, I may even extend SH95UPD to provide Kernel updating functionality like KernelEX for Windows 95 though...

KernelEx for Windows 95 would be great project without doubts. Will waiting for it with impatience. smile.gif
bristols
I intend to try SH95UPD with Windows 95. Looking forward to doing so. smile.gif

In the future, would it be possible to implement the USER32.DLL function MonitorFromRect? Doing so would allow the wonderful Quintessential Media Player version 5 (latest) to work in Windows 95:

http://www.quinnware.com/

This function exists already in Windows 98. I realise that you are not focused on providing a Shell update for Windows 95, and I'm not sure about all the implications of what I'm asking for Windows 98/98 SE/ME, but like Advanced User I'd really love to see a KernelEx for Windows 95.
marxo
QUOTE (bristols @ May 28 2009, 02:40 PM) *
I intend to try SH95UPD with Windows 95. Looking forward to doing so. smile.gif

In the future, would it be possible to implement the USER32.DLL function MonitorFromRect? Doing so would allow the wonderful Quintessential Media Player version 5 (latest) to work in Windows 95:

http://www.quinnware.com/

This function exists already in Windows 98. I realise that you are not focused on providing a Shell update for Windows 95, and I'm not sure about all the implications of what I'm asking for Windows 98/98 SE/ME, but like Advanced User I'd really love to see a KernelEx for Windows 95.


I'm far from expert when it comes to Windows 95, but isn't this function included with the new shell that comes after installing Desktop Update (Internet Explorer 4)?
sp193
Hi all, sorry for the long delay between replies, I was away from MSFN... =(

QUOTE
I'm far from expert when it comes to Windows 95, but isn't this function included with the new shell that comes after installing Desktop Update (Internet Explorer 4)?

Well, a lot of missing exports in the Win95 SHELL32.DLL were actually implemented in the IE4 desktop update, but installing the IE4 desktop update would bring disaster to a Win9x system (LOTS of potential instability, slowdowns, bugs and security loopholes...)

But no, as far as I can see (Someone correct me if I am wrong), the IE4 desktop update does not update USER32.DLL.

QUOTE
In the future, would it be possible to implement the USER32.DLL function MonitorFromRect? Doing so would allow the wonderful Quintessential Media Player version 5 (latest) to work in Windows 95


Well, I'd hate to tell you this but: There can't be a "complete" KernelEx for Win95 directly as Kernel32.dll of Win95 doesn't seem to be able to be patched with the KernelEx patcher (Ask those who tried installing pre-v0.03 versions of SH95UPD on Win95). However, I could write a custom patch to patch those other files(like USER32.DLL, if it can be patched) under the KernelEx 0.3x architecture if you would like.

However, whatever update it is, it can only come after October. Sorry guys, but my grades have fallen significantly during the past year.

However, thanks for all the support you guys have been giving to this project!! Keep the suggestions/comments coming.
sp193
Hi everyone, after a long while of being away from SH95UPD development, I need to inform all of you that Geocities Singapore (The website host for my project page) is going to shut down it's web hosting services on the 26th October 2009. sad.gif

Therefore, I created a blog account for all of my programming projects, and SH95UPD would be moved there. It's still under construction, hence there are no release links there yet.

Until the 26th October 2009, my Geocities website would still be operational (Along with the downloads listed there), but please update your links.

Blog link:
My program development blog
Session
sp193, thanks for posting status.

Among the programs I have working thanks to SH95UPD:
Virtually all incompatible 98/ME stock programs; InfraRecorder; GTK+ 2.6.10; import function in Firefox 2.

Opera 10 milestone 1606 and Firefox 3 need to point to the 98 shell; I mention these
because I don't think it's from missing ExtractIconExW/Shell_NotifyIconW functions.
SHGetSettings is used by a few programs, notably Tihiy's RP9 setup.
sp193
QUOTE
Opera 10 milestone 1606 and Firefox 3 need to point to the 98 shell; I mention these
because I don't think it's from missing ExtractIconExW/Shell_NotifyIconW functions.
SHGetSettings is used by a few programs, notably Tihiy's RP9 setup.


No wonder Firefox 3 won't work for me....
I'll see what I can do.

Thanks for your feedback!
sp193
Thought that I would give a little surprise before my "all important examination".

I present to the MSFN community SH95UPD v0.0.7.

It is a major rewrite of SH95UPD v0.0.6, and now uses the KernelEx 0.3.6a architecture instead of the old KernelEx 0.3.2a architecture.
It has many of the missing exports implemented and fixed. However, that makes it a genuine "prototype" as it may have introduced many new bugs.
I didn't extensively test it though, but it hasn't caused any malfunctions on my system yet.

The sad thing is that Firefox 3.0 still doesn't run on my system. sad.gif

Tested with KernelEx 0.4.0 Final installed on top.

Post here the issues you have encountered in v0.0.7, but were not present in v0.0.6. Also, post any new issues to SH95UPD here, but please mark them as being "fresh".

Visit the project site for a more complete update list.

Edit 2009/08/27:
I found a major issue with SH95UPD v0.0.7. I can't save web pages in SH95UPD due to a faulty SHGetSpecialFolderPathA implementation...
Therefore I have released SH95UPD v0.0.7A that should resolve the issue...
snuz2
Well, earlier in the year I wrote that I hadn't tried SH95UPD, but I guess I was wrong -- when I try to install version 7a, it says I must remove version 0.0.3 first. I now remember trying it, it didn't add any exports I was missing, but I must have used the patched shell32 to build my system.

Is there anyway to remove v3? or should I just get a new copy of shell32.dll from W95? I seem to remember patching a lot of stuff in that shell32, so I would rather not start from scratch.


thanks,
snuz2
sp193
Well, if you installed SH95UPD v0.0.3 properly there then there should be an entry in your "Add/Remove programs" control panel called "SH95UPD v0.0.3".

However, if it's missing then you could try the following in pure MS-DOS mode(Not the MS-DOS box in windows, but you MUST reboot into Windows 9x's MS-DOS):

1. Run the batch file SH95RECO.bat in your WINDOWS\COMMAND folder. (e.g. C:\WINDOWS\COMMAND\SH95RECO.bat)

2. SH95UPD backs up your system files as *.S95, so rename SHELL32.s95 as SHELL32.dll and you're fixed.

3. If that fails, then you have to restore a copy of SHELL32.DLL from your Windows 95 setup disc\diskettes.
Also, if your copy of SH95UPD was old to have been the version that modified KERNEL32.DLL, then you should also restore that. The last version I think that still did that was v0.0.2 so I think that you're safe.

If you use Windows 98 then you can use SFC for that; If you are using Windows 95 then you need to extract the files from your \Win95 folder on your setup disc/diskettes yourself.

4. Another way(But is highly unrecommended) is to run SH95UPD.exe with the --debug-reinstall parameter. I use this during development. But please, use this only when you really can't fix your installation with the above methods as this is risky! However, this would preserve all previous modifications in your SHELL32.DLL. It's almost the same as method 2, but "hot-patches".

All the best!

BTW: My Geocities page would be going off-line on the 26th October 2009 - the first day of my exams. Therefore I think that I would upload everything onto my Linkbucks blog... until I find another suitable host.
EyesOfARaven
Depending on how you wrote the detection routine for older versions, and if he made OTHER changes to his shell32.dll as he seems to have indicated, he may not have ever installed 0.0.3 and it may just be falsely detecting it due to similar or other changes.

(my completely-unfamiliar-with-this-situation 2 cents)

Oh and I can provide a mirror for your stuff on the Infotaxis Project:
http://sites.google.com/site/infotaxisproject (DNS is updating, but normally would be "projects.infotaxis.org")

Even if you've already found a new location or mirror I'd like to still do one for you, it fits my site's mission.
snuz2
ok. i couldn't get any of your methods to work, bcuz no backup files. but i found 0.0.3 and it cleared the data file. then i put fresh 4.0.1111 W95 shell32 on and updated with 0.0.7a. Seems to be working. There really werent' any hacks in shell32, i was thinking of user32 maybe or explorer. so tomorrow I will try taking out references to my win98 shell from various applications and see how it goes.

thanks for ur speedy help! I will report my experiences!
snuz2
okay, tonight I unhacked all files referencing the W98 shell32.dll. This consisted of Acrobat Reader 6 and Y! Messenger 8. Happy to report that neither of these are now broken. The only other application I can remember hacking is eMachineShop which requires KernelEX to run, currently I don't have that installed.

Problems I did find:
Taskbar in Uberskin 8.3.13 has problems reporting its area to shell, must be unlocked to dock it and then relocked. Looks like it reports its unlocked size first with the resizing borders, but then fails to draw in them. This was never a problem before.

A more interesting problem is the url protocol monitor... the thing that takes mailto: and http: addresses and launches them in mail and browser. I use the following registry hack to send them to W98 shell32.dll
REGEDIT4

[HKEY_CLASSES_ROOT\CLSID\{AEB6717E-7E19-11d0-97EE-00C04FD91972}]
@="URL Exec Hook"

[HKEY_CLASSES_ROOT\CLSID\{AEB6717E-7E19-11d0-97EE-00C04FD91972}\InProcServer32]
@="shell32.ori"
"ThreadingModel"="Apartment"


But it looks like your update doesn't pick these up if I point it to W95 shell32.dll.
Is there another way to pass these references to the shell that I don't know of?
Or does everybody using Explorer95 just do without this?
This is the only thing really missing so far for me.
Any comments?
sp193
Congrats on fixing your SHELL32.dll. I forgot to mention earlier, but the "incompatible version" you had might not have been SH95UPD, but a version of KernelEx\KUP. SH95UPD also reports them as "Incompatible versions" if detected(And the backup files of KEX are *.W01).

QUOTE
A more interesting problem is the url protocol monitor... the thing that takes mailto: and http: addresses and launches them in mail and browser. I use the following registry hack to send them to W98 shell32.dll

I've never encountered this problem personally(The programs I use do not use the mailto: and http: handler), but in theory this might happen as the Windows 95 SHELL32.dll is not very "integrated" with the rest of the Windows OS(And lacks certain functions) compared to the Windows 98 SHELL32.

Your solution is probably the best option, as the Windows 95 shell is missing the necessary code (And is not aware of URL.dll or any other IE related files).

However, to help solve this, could you please be more specific to list programs that malfunction because of this?

Other missing functions include the SHCreatePropSheetExtArrayEx, which is implemented in the Windows 98 SHELL32.dll as ordinal 194 (Hence the Desktop control panel crashes, as Ordinal 194 is RealShellExecuteExA in the Windows 95 SHELL32)

QUOTE
Taskbar in Uberskin 8.3.13 has problems reporting its area to shell, must be unlocked to dock it and then relocked. Looks like it reports its unlocked size first with the resizing borders, but then fails to draw in them. This was never a problem before.

You mean that the Taskbar actually goes off-screen or out of it's normal positions?

I'll look into that... might have been caused by a "broken" function... if any still exist. Uberskin runs on a normal Windows 98SE installation right? There are still unimplemented functions in SH95UPD v0.0.7A, so this might be a side effect.
snuz2
Taskbar
Attached here is supposed to be a picture of the taskbar problem.

The orange and brown is the wallpaper, note that the taskbar has a border around it where the "handles" for moving it would be if it wasn't Locked. This area is never updated by the taskbar ( because it isn't actually using it anyway) nor does it get wallpapered, even after refreshing the desktop. You can see that it has remnants of whatever window frames and other stuff that was last drawn in there. So, the desktop thinks it belongs to the taskbar and the taskbar thinks it belongs to the desktop whistling.gif .

If I uninstall v007a, the taskbar behaves normally, reinstall, and back to the conflict.
It doesn't make any difference whether the taskbar is "Always on Top".
But, if I unlock ( therefore displaying the handles in the no-man's land) and then lock it again ( thereby getting the taskbar to inform the desktop that it no longer has handles) all will be well and they are then resync'ed.

Links
The place I usually test this is in Metapad, it will highlight and launch links like www.yahoo.com as well as many others. I vaguely remember that 95 had this ability but maybe handled it differently? I seem to remember that some programs really depended on this behavior as well but I have not been able to remember which ones...

It's annoying, because just that one use of W98 shell will cause it to load at startup. If I get more info, I will post...
thanks for your help again!
sp193
QUOTE
If I uninstall v007a, the taskbar behaves normally, reinstall, and back to the conflict.
It doesn't make any difference whether the taskbar is "Always on Top".
But, if I unlock ( therefore displaying the handles in the no-man's land) and then lock it again ( thereby getting the taskbar to inform the desktop that it no longer has handles) all will be well and they are then resync'ed.

Wow...that problem shown in the Screenshot you posted looks bad...

After you uninstall v0.0.7A, the taskbar works properly? You didn't install\uninstall anything else?

Hmm... if you didn't alter your Windows installation other that uninstalling SH95UPD v0.0.7A then I can conclude that some function that I implemented in v0.0.7A isn't working properly.

If that was really the case, then I would suspect the dummy SHGetSettings() function. It supposing returns the current settings of the Windows shell, but I didn't fully program it yet, and it returns dummy settings (That are still valid, but may be not the same as your current setup). These setting include whether hidden files are shown, and whether to display a confirmation dialog on deleting files from the recycle bin etc.

About the links problem... I'll see if my Microsoft Word 97 has any problems. It also uses Hyperlinks and e-mail addresses.

QUOTE
I vaguely remember that 95 had this ability but maybe handled it differently?

Windows 95 had this ability, but certain extra components had to be installed; For example: Internet Explorer 4.x/5.x. The Pre-OSR2.5(Win95C) Windows 95 components were largely unaware of Internet Explorer's existance, or it's shared functions. Hence it's SHELL32.dll did not contain any internet access capabilities.

QUOTE
It's annoying, because just that one use of W98 shell will cause it to load at startup. If I get more info, I will post...

Agreed. In fact, I find it irritating to find any part of my Windows 98/95 hybrid not working properly. biggrin.gif
Tihiy
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.
BenoitRen
QUOTE ("sp193")
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.
snuz2
@BenoitRen welcome.gif
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.gif


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...
snuz2
thumbup.gif
Confirmed, the problem went away when I corrupted the DllGetVersion string from SHL8.DLL.
Thanks yet one more time, Tihiy!
snuz2
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 !




Google Internet Forums Unattended CD/DVD Guide

This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.