Help - Search - Members - Calendar
Full Version: UberSkin
MSFN Forums > Microsoft Software Products - Discussion & Support > Windows 95/98/98SE/ME > Windows 9x Member Projects
Pages: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

   
Google Internet Forums Unattended CD/DVD Guide
Peffse
extremely late, but an extra post can't hurt eh?

ran default cloverfield on 5900XT


ran default on second machine with integrated SiS 530



On a possibly related note, the program displayed a very strange icon on the second machine.
It's a fresh install of ME, patched, uberskinned and no unofficial patches yet.


I don't know if it's the video drivers, ME itself, or if it's uberskin that did it, but that's strange none-the-less.
Tihiy
Okay, update as promised to fix birth defects:
http://tihiy.ahanix.org/uberskin.exe
Now 16-bit apps should be ok (not skinned though) and those hidden crashes (beeps?) on exit should be history.
I'm waiting for bugs, please test this version for a while. New version is being cooked, i'm planning to rewrite some things (and add some things, too). I hope to reduce resource usage from ~2% to ~1%. blushing.gif
Controller
Some minor bugs (on a dual-monitor system with very custom Windows 95 explorer shell and other hacks!):

- Round edges loose transparency (Resizing fixes this)
- The Startmenu position for top / left alignment switches to my second monitor (which is left of the primary one). Bottom alignment opens opens on totally wrong position (see http://www.ctuser.net/desktop.jpg ), right alignment appears correct. (Disabling secondary monitor doesn't fix it).
- Last (right) icon gets clipped (~ 2 pixel)

So if you got some spare time...

Still appreciate the better Windows 95 explorer support, gotta test if this works without any Internet explorer components too. Also thanks for having ueberskin seperate from the RP, maybe you can make the new 'ghosting' feature (for 98er user32.dll) and task manager stuff seperate too (or more RP features optional?)
Bleeder
QUOTE (Tihiy @ Jan 23 2008, 03:10 PM) *
I'm waiting for bugs

Well, one time, when resume from standby, uberskin taskbar was all garbled, rest of desktop was ok. Running geforce fx5200 w/ nv8269 driver from MDGx.
PassingBy
Hmmm .....

Thank you for the update ...
QUOTE (Tihiy)
...
Now 16-bit apps should be ok (not skinned though) and those hidden crashes (beeps?) on exit should be history.
...

Quick test run result:
1. 16bit apps not skinned, char map now ok. Solitaire does not crash. Perhaps the skinning will return someday eh ?
2. Beeps on minimize/maximize has disappeared ... more peaceful now ... (Dont know about hidden crashes, perhaps you have some err condition trigger in uberskin but no apps were crashing after the beeps previously).

Rgds
Philco
QUOTE (Tihiy @ Jan 23 2008, 03:10 PM) *
Okay, update as promised to fix birth defects:
http://tihiy.ahanix.org/uberskin.exe
Now 16-bit apps should be ok (not skinned though) and those hidden crashes (beeps?) on exit should be history.
I'm waiting for bugs, please test this version for a while. New version is being cooked, i'm planning to rewrite some things (and add some things, too). I hope to reduce resource usage from ~2% to ~1%. blushing.gif


1/ Tihiy, please - its real extend (plus) about in all DLL version (e.g. UberSkin 8.1.2)? Or writing info / regedit?
Tihiy
You mean add versioninfo to dlls? I'll try to make this happen if i manage to make it automatically in build scripts, since otherwise i'll forget it most times.

There should be a new version today which will provide indirect fix to lock taskbar IE5.5 bug:
It will fix hangs after "many files operation" once and forever. So you'll be able to use browse*.dlls from IE6 normally. I swear.
Zoinkity
One other glitch:

If you switch to one of the Vista themes with the weird large round start button and place your taskbar at the top of the screen, the bottom of the button is truncated at the height of the taskbar.


Any chance for a seperate vertical tasktray skinning?
Flat menu skinning would be nice ;*)
Tihiy
QUOTE
If you switch to one of the Vista themes with the weird large round start button and place your taskbar at the top of the screen, the bottom of the button is truncated at the height of the taskbar.
Well, not really, since it is not round, just illusion.
QUOTE
Any chance for a seperate vertical tasktray skinning?
Flat menu skinning would be nice ;*)
Sure. I'll try to port BlackMesa for this.
Zoinkity
Well, most of BlackMesa is already ported. I was sort of waiting for a newer release of UberSkin to implement those last few changes and polish a few things.

Note to anyone silly enough to download: this isn't finished. Reg file in there will add the colors/metrics for scheme.

http://www.geocities.com/nefariousdogooder...l/BlackMesa.zip


Sorry about the Vista logo. Next time I'll check if it's round ;*)

Oh! There is one glitch though. If you make a 32bit caption button it isn't flattened to the caption bar on screen. It gets flattened to the original frame caption image, which will almost undoubtedly leave you with the top and bottom bars of the frame caption in the four corners of the image. If you don't know what I'm talking about, switch the closecaptionbutton line in BlackMesa to the 32 bit image provided in the zip.
Tihiy
Okay, update to fix fixes.
http://tihiy.ahanix.org/uberskin.exe
- Fixed caption button 'flattening' issue ^^;
- Fixed crashboombang when explorer exits and you changed skins this session (seems to be regression from previous update);
- You can change skins when you're using alternate shell;
- Adjusted tray icons not to cut off;
- Added resource extinction after mass file operation fix!
^^ While this fix is doing almost the same thing existing shell32.dll patch, it is better because it tries to fix the root of the problem system-wide.

Zoinkity, i think BlackMesa is fantastic, although 'inverted' 3D color scheme is not-so-pleasant to work with. Let's wait for a new versions.
Zoinkity
I agree. Actually, I hate the style ;*) I got suckered into porting it... You should have seen it before. The non-skinned inactive bar was the same color as the text! Aegh!

Any plans to skin the expand/collapse buttons? I haven't heard it mentioned yet.
Bleeder
QUOTE (Tihiy @ Jan 25 2008, 04:05 PM) *
- Adjusted tray icons not to cut off

I think something about this fix makes the systray icons looked jammed up too close to the line that separates systray from rest of taskbar. Using Windows XP skin. Will try to attach screenshot later.
Tihiy
Yeah, i know. This is a trade-off so far.
Offler
skinning just dont work. themes are available but skins not.

i have Windows 98SE, with Exuberants service pack 4 CZ, kernel ex. dependency walker shows that i miss one exe file - ntvdm.exe... is it necessary to run skinning engine?

edit:
fixed. it must be used with Wow32.dll which is available with Windows98SE. manually imported Wow32 from winXP doesnt work with it.

By the way i can confirm that uberskin is not consuming system performance. it needs only 2 percent of overall system resources.

edit2:
also i noticed one very positive thing with Uberskin with Vista skins. If the application hooks or freezes it shows red color in taskbar. Thats quite good in case you are trying to identify the problem. Also in one case windows automatically offered to close the hooked application, even without pressing CTRL+Alt+Del. that didnt happened before i installed uberskin.
PassingBy
Hmmm .....

QUOTE (Offler @ Feb 3 2008, 08:00 AM) *
..... it must be used with Wow32.dll which is available with Windows98SE. manually imported Wow32 from winXP doesnt work with it.

wow32 is already part of win95 ... and uberskin can be made to work under win95 ... So far I've ran uberskin on w95b/w98fe/w98se/wme successfully ...

Rgds
Offler
use any skin (i use Vista Standard). unlock taskbar and put it more than five lines up. the graphics of taskbar will break...

also i have some trouble with Adobe Photoshop 5.5 with skinned desktops. when window of adobe was minimized and then reopened part of window was not correctly shown. Sometimes windows which are on background show their top bars even when they have to be overlayed - depends on app.

edit:
problems with overlaying is with adobe photosop and irfanview - graphics editors and viewers...
Offler
another bugreport. Uberskin is causing trouble with WDMCAP.DLL related applications - mostly tv tuners. i will make screenshot... but tomorrow.

edit:

some screens

http://slayershrine.wz.cz/bug1.jpg

first line shows when i enlarge taskbar to 3 lines - graphics is little bit broken. on fourth line it is completely broken...
last line shows missing first panel of Adobe photoshop. After some minimalizing and maximalizint adobe looks like this.

http://slayershrine.wz.cz/bug2.jpg

the same bug appears with all media related applications - irfanview and mediaplayer.

also error with WDMCAP.DLL is little bit mystery. i had to restore windows setting and some files to work TV tuner properly again - this fixed also trouble with WDMCAP.DLL.

The error occured when i had opened 9 windows of internet explorer, then i spammed few more windows and then i opened TV tuner application >> then the WDM error occured for first time, then RP8.DLL has crashed, and later Explorer exe. After reboot settings for TV tuner were blank and later when i restored them wdmcap. dll was still crashing. it stopped when i unistalled uberskin, and with it started again...

now i have restored windows from backup disk and it works again without trouble.

also Explorer.exe in win98 has another bug. if you open too much windows at one time it may crash - uberskin is making instability worse. XP and newer systems are able to collapse amount of windows into one. win98 cannot do that.
RetroOS
QUOTE (Tihiy @ Jan 7 2008, 07:36 AM) *
...
And yeah: NOT COMPATIBLE WITH ANY REVOLUTIONS PACK VERSION. They simply can't communicate.

Hi Tihiy,
I've been watching this topic with interest.
I currently have Revolutions Pack 7.11 installed.
Obviously when I try to install UberSkin it shows an error.
Because I've had RP7 installed for a long time, uninstalling is not an option.
If I did an uninstall now, it would undo all my registry changes back to June 2007 and effectively trash my Windows...

Is there any way I can test UberSkin with RP7?

Also, I understand that you will make RP8 able to upgrade over RP7.
Will this do a nice upgrade and not roll back the registry?
What will happen to the custom system files?

One last thing... Will RP8 support 32-bit icons, since this is a shell task...

Sorry about all the questions! - It's great to see you powering on with RP! thumbup.gif
Tihiy
QUOTE
use any skin (i use Vista Standard). unlock taskbar and put it more than five lines up. the graphics of taskbar will break...
Yeah, this is known bug which plagues most video drivers.
QUOTE
last line shows missing first panel of Adobe photoshop. After some minimalizing and maximalizint adobe looks like this.
Doesn't look very broken to me, but anyway. It is hard for me to find old Photoshop now, and i can't reproduce this issue with IrfanView.
QUOTE
The error occured when i had opened 9 windows of internet explorer, then i spammed few more windows and then i opened TV tuner application >> then the WDM error occured for first time, then RP8.DLL has crashed, and later Explorer exe. After reboot settings for TV tuner were blank and later when i restored them wdmcap. dll was still crashing. it stopped when i unistalled uberskin, and with it started again..
If you ever try it again, can you also monitor system resources and write down error address?
I could try to build old system with Windows 98 and video capture card, but i need to know which applications use this file.

QUOTE
Is there any way I can test UberSkin with RP7?
There is no end-user way.
QUOTE
Will this do a nice upgrade and not roll back the registry?
What will happen to the custom system files?

It will be painful but nice. Since RP8 aims to be absolutely modular and compatible without installing system-files-hacked-by-Tihiy, RP7 must be destroyed and then completely replaced by RP8.

Will RP8 be finished or not - depends on you and everyone. I need to find at least 48 man-hours to be able to deliver basic version, and i'm unable to make it so far.
Offler
Hw:
Ati Radeon x850XT (ou yeah smile.gif )
PV951 - tv tuner based on BT8x8 chip

SW:
ATV2000 by mike crash
Tweaked BT8x8 drivers by Ivan Uskov

Atv is little bit unstable while it comes to adjust its settings, but it is like a stone when i am watching, or recording video. also it needs msvcr71.dll msvcr80.dll. These files are not included with the installation and are not in normal windows.

also i try to reproduce the bug.

Edit: Bug reproduced
the error is not connected with uberskin. this issue occur when Ultima online is turned on, when Tv Tuner App is on and then i spam the internet explorer windows. two rendering engines (UO and tuner) are put in conflict when IE spams all available resorces >> wdmcap will fail. explorer crash is only secondary bug due window spam - and without explorer maybe the rp can have trouble...

i wonder if this bug (too many windows) can be fixed throught uberskin smile.gif
Xeno86
Bug #1 (notice the pink lines):
http://img170.imageshack.us/my.php?image=uberbuggf5.png

I have also seen this pink line on the task bar below a task button.
And when you open for example Dependency Walker, the left-top corner is pink for a second and then becomes transparent (sometimes stays pink).

Bug #2:
http://img255.imageshack.us/my.php?image=uberbug2ko6.png

Maximize/minimize buttons corrupted.
You can reproduce it by running blank Adobe Acrobat Reader 5.0.5a CE window. And selecting first option from "help" menu.
Also the scroll bars aren't skinned there as you can see.

Graphics: Radeon 7000, Catalyst 6.2 drivers.
chillinfart
QUOTE
Because I've had RP7 installed for a long time, uninstalling is not an option.
If I did an uninstall now, it would undo all my registry changes back to June 2007 and effectively trash my Windows...

Is there any way I can test UberSkin with RP7?

Well, i reinstalled partially my win98 to test it. wacko.gif

It's too much stable than winme+win98 cocktail for RP but isn't perfect. I cannot mix it with desktop themes for now.
Tihiy
QUOTE
Bug #1 (notice the pink lines):

blink.gif Holy cow, how? It seems that ATI drivers stretch images even worse than Windows itself. wacko.gif
It seems that i must implement work-arounders for such cases.
QUOTE
Bug #2:
Maximize/minimize buttons corrupted.

That's not buttons corrupted, that's just standard Windows title bar somehow drawed itself. rolleyes.gif
And UberSkin is able to draw only "standard" scrollbars. It is not capable of scrollbar control skinning. I'm pretty sure that those scrollbars are not even real, they must be drawn/emulated by Adobe Reader itself. Why not use Foxit Reader?

Also, Xeno86, how do you do? Do you have something to show, any thoughts?
If i would be able to find time i'll try to continue KernelEx with RP8 core, which is able to reconstruct export tables on the fly (very nice technique i invented lol!) and thus provide new functions to apps.

QUOTE
i wonder if this bug (too many windows) can be fixed throught uberskin
Some things may be fixed. Do you have some possible solutions or typical scenarios when this happens... and what to do?
Offler
nobody can predict how to limit amount of application. Look at XP and the way how to collapse many taskbar items into one.

also two bugs:
1. Prey
- while uberskin installed i cannot run the game. error message is "Cannot activate required security module" i found some info about it - www.securom.com. recomended fix didnt work.

2. Oblivion
- game is too unstable to measure if uberskin affects it. sometimes it do some trouble...

ad Ati drivers:
i see pink color sometimes in the corners. for now is uberskin very tasty to look, it works quite good but in some cases i have trouble for now.
Tihiy
Oh, the game.
I'VE JUST LOST IT.

Would... some NoCD work?
Offler
dont know. i use Prey to test KernelEx and because it i use original game. game was able to run after i removed uberskin, and again not functional when i installed it.
Xeno86
QUOTE
Also, Xeno86, how do you do? Do you have something to show, any thoughts?
If i would be able to find time i'll try to continue KernelEx with RP8 core, which is able to reconstruct export tables on the fly (very nice technique i invented lol!) and thus provide new functions to apps.

I'm quite busy now with the exams. sad.gif
And regarding KernelEx - I have implemented import table modification/reconstruction and export forwarding support. I have also started writing NTFS filesystem driver but it's harder than I thought because of lack of decent documentation.
What do you mean by 'reconstruct export tables on the fly'? You mean that you are able to modify system files in memory without reboot?

QUOTE
Why not use Foxit Reader?

Because it is sh*t. It exhausts GDI resources at the speed of 1% per second! It is also noticibly slower than Acrobat Reader.
My PC hanged twice until I realised that it was Foxit that caused trouble.
It also dislikes your UberSkin by the way tongue.gif  (it ate half of the title bar). Also that floating "X" button is not UberSkin issue.
http://img201.imageshack.us/my.php?image=uberbug4pd9.png

Also another glitch I noticed (it doesn't happen always):
http://img135.imageshack.us/my.php?image=uberbug3fx0.png
Tihiy
QUOTE
What do you mean by 'reconstruct export tables on the fly'? You mean that you are able to modify system files in memory without reboot?

Yeah. I can detail it more if you're interested.
QUOTE
Because it is sh*t. It exhausts GDI resources at the speed of 1% per second!

Hmm hmm hmm. Is it Windows 98 or ME you're using? It may be msimg32.dll bug which plagues 98 version.
QUOTE
(it ate half of the title bar)

That's widely reported issue, but it is hard to catch. shifty.gif
QUOTE
Also another glitch I noticed (it doesn't happen always):

Oh, it means ATI drivers are worser than my imagination. It must be worked around in next version.
Xeno86
QUOTE
Yeah. I can detail it more if you're interested.
Yes, I'm curious.

QUOTE
Is it Windows 98 or ME you're using? It may be msimg32.dll bug which plagues 98 version.
Yes, I'm on 98 SE. If that is the case then they should distribute it with working files.
Otherwise they shouldn't advertise it as working with 98.
Tihiy
Well, it is relatively easy. I can drop UberSkin code here later, but here's the theory:
CODE
-1) The DLL which loads must be in shared memory (in upper 2GB). It can be achieved with linker flags for MS VC, but i had to patch PE header and DllMain since PB compiler sucks (i suck too since i don't like VC). It is also nice to make base DLL address also above 2GB.
0) It must not be unloaded, since new functions point to it. I achieved it by using undocumented (used by malware) MPRServices key. Also this way i achieved asynchronous loading and my dll stays in memory until mprexe.exe is killed (and it must not be killed).
1) Get loaded DLL base address with LoadLibrary or GetModuleHandle. It is a pointer to IMAGE_DOS_HEADER. Via ->e_lfanew you get IMAGE_NT_HEADERS ptr, via ->OptionalHeader you get IMAGE_OPTIONAL_HEADER ptr.
2) Get IMAGE_EXPORT_DIRECTORY. Here, we can have access to array of function entries, names and their connection.
3) So what? We can modify those arrays or make new ones and make AddressOfFunctions, AddressOfNames, AddressOfNameOrdinals point to our arrays (they must in our shared library space). Don't forget that they're all RVA and thus we have to substract base image from our function addresses.
4) But wait, we can't modify them. All upper 2GB is protected from user space. We have to use PageModifyPermissions hack to have access to them! (also used by malware)
5) Voila! Now, everytime hacked library is loaded, new EAT is used and our functions take place directly, while our DLL can use original library functions directly.
6) This method works only for shared system DLLs: kernel32,user32,gdi32,comctl32,advapi32 and other minor ones. Non-shared dlls are other story. Also, you can't directly link your shared dll to non-shared one. It'll be painful to make unicows.dll work normally, so it is better to reimplement it.



QUOTE
Otherwise they shouldn't advertise it as working with 98.

If it is true that msimg32.dll leaking, i'll make version which isn't.
In fact, i had to re-implement AlphaBlend and TransparentBlt for UberSkin, since i can't ship ME version (and it is pretty buggy too).
Xeno86
That is exactly how I thought you achieved it.
Unfortunately as you mentioned it is not good for libraries that are loaded under 2GB such as mpr.dll, shell32.dll, comdlg32.dll and many other.
And also by modifying system files at runtime you potentially make software that use anti-hacking system such as GameGuard, possibly also some anti-virus programs incompatible with this method.

QUOTE
It'll be painful to make unicows.dll work normally, so it is better to reimplement it.
That is what KernelEx Unicode Layer is supposed to do rolleyes.gif
Now I build it as a standalone file but later when it is complete - I want to intergrate it with system files using my GenPatch tool.
PassingBy
Hmmm .....

welcome.gif Tihiy, Xeno86 ...

QUOTE (Tihiy)
..... (i suck too since i don't like VC). .....

blushing.gif
That means I sucks too .....

I was toying around (and still is) with an old idea to put all non-supported functions in kernel32 and user32 (from w95 to wME) into a redirected dll (yeah, I sucks coz I'm lazy). I wanted to use it per app basis but I'm a long way from getting there ...

Thank you Xeno86 for releasing the KEX sources. It was helpfull .....

Thank you Tihiy for the steps to modify functions in memory. It confirms my not so old thoughts that it is possible to do such things ..... just that I haven't reached step 4 above ...

Keep on coding guys ... you guys made me come back to learn more of the gritty stuffs ...

Rgds

whatever420
QUOTE (Tihiy @ Feb 7 2008, 06:37 AM) *
CODE
-1) my dll stays in memory until mprexe.exe is killed (and it must not be killed).


Hmmmm... I guess that would explain the 3 or so mprexe.exe crashes I've had since installing Uberskin...
Tihiy
QUOTE
I guess that would explain the 3 or so mprexe.exe crashes I've had since installing Uberskin...

Was it with the latest version? If your system is alive after this, can you write down error address?
If you ever meet it again, report it please. Also please include software on your computer which was working.
Offler
QUOTE (PassingBy @ Feb 7 2008, 06:55 AM) *
Hmmm .....


I was toying around (and still is) with an old idea to put all non-supported functions in kernel32 and user32 (from w95 to wME) into a redirected dll (yeah, I sucks coz I'm lazy). I wanted to use it per app basis but I'm a long way from getting there ...


dll redirection? what about redirect new XP only games to other dll which used to be kernel32.dll in winXP? smile.gif i want to know if is this possible because if yes there is quite easy way how to upgrade kernel functionality easier...


and also some info to error with Prey:
"A required security module can not be activated. This program can not be executed."
SecuROM™ has determined a debugging or an emulation tool is running.

uberskin has a debugger or it is an emulator?
Xeno86
Bug:
Tray icons do not update properly.
http://img169.imageshack.us/my.php?image=uberbug5ew9.png
To reproduce open Resource Meter and use resources until you are below 30% - it should turn into yellow... but it is yellow and green and green stays at initial level.

Minor bug:
When using "AeroBlue" skin the progress bars are plain.

Also this happened to me once:
http://img527.imageshack.us/my.php?image=uberbug6aa1.png
But I don't know how to reproduce it.

Some ideas:
Add a function to recover missing tray icons after Explorer crash.

Make desktop icon text background transparent and add a shadow to the text as in "Vista" skin which adds shadow to title bar text.

Also, how did you achieve that the border corners are round?
Do you access the area beneath the window or draw over the desktop skipping pink pixels in the bitmaps?
noguru
QUOTE (Xeno86 @ Feb 8 2008, 06:36 PM) *
Also this happened to me once:
http://img527.imageshack.us/my.php?image=uberbug6aa1.png
But I don't know how to reproduce it.


Happens all the time with Nero6, maybe it's related.
Tihiy
QUOTE
Tray icons do not update properly.
Oh, Windows 98 taskbar! How come it wasn't reported before?
I hope to find time on weekend to fix this.
QUOTE
Add a function to recover missing tray icons after Explorer crash.
All sane applications recover their icons themselves, since this functionality is available for 10 years. However some Windows components don't: Internat (fixed in Windows ME) and Rnapp (fixed in RP)
QUOTE
shadow to the text as in "Vista" skin which adds shadow to title bar text
Well, it can't be real shadow since it's too CPU-consuming. But something can be done...
QUOTE
Also, how did you achieve that the border corners are round?
SetWindowRgn
Xeno86
QUOTE
All sane applications recover their icons themselves, since this functionality is available for 10 years. However some Windows components don't: Internat (fixed in Windows ME) and Rnapp (fixed in RP)
I was rather thinking about third-party applications, e.g. Intel SpeedStep Panel, GG Messanger - there are lots of such apps. I have to kill those after explorer crash and start them again if I want to access them and this is quite annoying.
PassingBy
Hmmm .....

Some older systray apps were written with an oversight. Some took for granted that systray is always available. Some only put a systray icon and that's it. Some use timers to check if systray icon needs to be re-register. Better ones should already be aware of and able to handle 'TaskbarCreated' event to re-register systray icon (requires IE4+ explorer versions).

From what I understand, to put a systray icon, any apps needs to register with explorer and prep for internal handling of the systray msgs. Once registered, the app set a systray icon and responds to a set of events. If explorer crashed then the systray states handlers are now in limbo = junk. Once explorer restarts, everything is new now and these systray apps are supposed to register again on the new systray taskbar for the systray msgs to work. Those apps that doesn't foresee these conditions will never know explorer crashed+burn and systray events will not be received.

I agree with Tihiy that better designed systray apps should be able to recover from explorer crash and restarts. It is annoying to kill systray and restart it just to get the volume icon back but perhaps a better solution would be to write a small script to kill a list of no longer showing systray apps and restarts them ...

Rgds
Xeno86
QUOTE
I agree with Tihiy that better designed systray apps should be able to recover from explorer crash and restarts. It is annoying to kill systray and restart it just to get the volume icon back but perhaps a better solution would be to write a small script to kill a list of no longer showing systray apps and restarts them ...
IMHO automatically killing applications is not a very good idea, it would be much better to kindly ask these applications to exit rolleyes.gif

However, the best solution that comes to my mind is to listen to applications registering with systray (hook Shell_NotifyIcon function?) and remember their handles and when explorer crashes and restarts, those handles should be re-registered with systray automatically. This way the applications shouldn't even notice what happened.

Does it make sense?
Tihiy
QUOTE
However, the best solution that comes to my mind is to listen to applications registering with systray (hook Shell_NotifyIcon function?) and remember their handles and when explorer crashes and restarts, those handles should be re-registered with systray automatically. This way the applications shouldn't even notice what happened.

It does make sense... However, you offer fixing consequences, not fixing *the* problem: explorer crashes. Why should it crash? I can't speak for 98 explorer, but ME does not crash for me. It may hang in some very special cases and i have to kill it, but that's another problem.
Xeno86
I don't think that a crashing explorer is something uncommon.
As for the reasons: it crashes always when resources are exhaused and also in many unexpected situations, a misbehaving application can also crash explorer.
Also sometimes you have to kill explorer by hand because it hangs - when browsing network shares, after deleting 10 000 of small files, when one of the windows stops responding, etc.
I don't believe that it doesn't crash on ME, even on XP it crashes very often  cool.gif  
Tihiy
QUOTE
I don't think that a crashing explorer is something uncommon.
I don't think that a crashing explorer is a right situation.
QUOTE
when browsing network shares
Prevent it by using multi-instance explorer or killing only hang thread!
QUOTE
after deleting 10 000 of small files
Mostly fixed in last version!
QUOTE
when resources are exhaused
Don't let them exhaust!

But you'right, yes. It is not that hard to restore tray icons. In fact, explorer has some code to do this itself (it's not used).
I'll make it happen some time (but first i'll fix all those Windows apps which don't recover icon).
PassingBy
Hmmm .....

QUOTE (Xeno86)
IMHO automatically killing applications is not a very good idea, it would be much better to kindly ask these applications to exit rolleyes.gif

Yes, agreed. Its not the best solution. Afterall, explorer crashed too ... perhaps we can write a small app to send tray msg to these apps that will popup their menu to exit ...

QUOTE (Xeno86)
However, the best solution that comes to my mind is to listen to applications registering with systray (hook Shell_NotifyIcon function?) and remember their handles and when explorer crashes and restarts, those handles should be re-registered with systray automatically. This way the applications shouldn't even notice what happened.

Does it make sense?

I'd already thought about that cocktail some time ago (ok, I sucks coz I'm lazy)... We'd have to keep a list of wnd handle + notifyicondata (I'm not sure if its safe to assume that notifyicondata location does not get moved around). Also we need to track possible multiple tray icon from one wnd handle. If explorer restart after a crash, we'd have to see if any tray apps is auto-registering ... those get a bypass and the rest that is still valid needs to be registered by our code. We also should keep track of the ones that is deleted too. Perhaps Tihiy can cook up a better solution ...

QUOTE
I don't believe that it doesn't crash on ME, even on XP it crashes very often

Well, as a matter of fact, it hardly crash on my wME testbed. Many many people would hurl abuses on wME but I found it pretty smooth ... I think I'm going to re-trace my wME setup again later ...

There was once an XP machine (under my watch) that would crash explorer once or twice every 20mins ... I gave the system a complete dusting and it hardly crashes anymore ... whistling.gif

Rgds
Controller
QUOTE (Tihiy @ Feb 9 2008, 06:06 PM) *
QUOTE
after deleting 10 000 of small files
Mostly fixed in last version!

Guess fixed for 98er Explorer (shell?) only? Any further infos available?

Btw, Using Opera (6.06b), on title caption changes, the title bar isn't skinned except the icon/buttons.

Also MDI client windows aren't skinned when minimized/maximized (opera 6, vb6, photo impact, ...?)
icefireicefire
why are u using opera 6 and not the newer opera 9? I can tell u that opera 6 is not a good browser, actually no opera is before 9 (then it is the best one).
I don't think it could even display like cnn correct?
Tihiy
Minor update! [8.1.4] unsure.gif
http://tihiy.ahanix.org/uberskin.exe
- Fixed Windows 98 shell tray icons;
- Fixed some Windows 95 taskbar bugs;
+ Added transparent desktop icon labels:
CODE
[HKEY_CURRENT_USER\Control Panel\desktop]
"TransparentIcons"=dword:00000001

(same as in Controller' 95 shell update)
QUOTE
Also MDI client windows aren't skinned when minimized/maximized

Excuse me, but what to skin when they're maximized? Please provide screenshots.
Xstyle
I hope u don't mind...i've moded uberskin a little bit to see how it looks with 32 bit icons and stuff.....
I must say it looks awseome.... whistling.gif I must say it runs FAST!!! whistling.gif
I want to know when you'll make it compatible with RP7???

Here is a screenshot:
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.