Jump to content
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. ×

Recommended Posts

Realy nice job! Congratulations for Xeno86 and Tihiy. The software works greate. Ooo 3.0.1 and other software is now useable under W98. I miss a little documentation for the "Core.INI". For some situations I think is better to diable or Uninstall KernelEx. Also I miss a simple Uninstall-Function. [...]

The VLC Media Player 0.9.8a (Open Source Media Player: http://www.videolan.org) dosn't work. Actual a dont know, its a problem of Videolan or a problem of KernelEX.

The only setting tweakable by user is through compatibility tab. Core.ini is not meant to be edited by end users.

You can disable KernelEx selectively through compatibility tab, which you can find in properties for .exe or shortcut to .exe file.


Uninstall isn't simple?! Is it a joke? :wacko:

In case you couldn't find it... it is "hidden" in "Add/Remove Programs" under Control Panel. It is standard uninstall procedure for all Windows programs.

You can simply check if Videolan not working is KernelEx problem or not by putting a tick at "Disable KernelEx extensions for this program" under compatibility tab.

With 98SE and Kernelex 4.0 RC 2, I can install Flash 10.0.22 but Firefox 3.0.7 crashes every time. (Seamonkey 1.1.15 complains about Flash 10 when it starts but after I close the dialog, Seamonkey works and Flash 10 works.) Reinstalling Flash 9.0 r159 eliminates all of these problems. Flash 10 use to work for me with Kernelex 0.3.5 but it hasn't worked since 0.3.6. Any suggestions?


It must be something wrong with your configuration, because I use Firefox 3.0.7 with Flash 10 everyday and it works for everybody else.

My suggestion is to do clear install of Firefox 3 and creating a new profile.

• Debug setupkex project still cannot find prinf:

d:\free\kernelex\common\pemanip.cpp(360) : error C2065: 'printf' : undeclared identifier

• Debug kexbasen project misses a link to symbols found in shell32.lib (but default libs are ignored):


• Debug kexbases misses an import in a library that is not on my system:


I've fixed printf issue for debug setup project. However all other errors are caused by your own modifications to the project files.

Link to post
Share on other sites

Hi Xeno86,

thanks for your quick responce. Sorry, I finde the Uninstall in the Control Panel. My mistake. :whistle:

Thanks alot for the other tip e.g."compatibility mode". Now it works fine. :thumbup

I think a list of usable programms under W98 and KernelEX is present in the Form "Last version of Software for Windows 98SE". :blink: This list can be a starting point for some expansion for next versions or new programs that works with KernelEX.

Question: Tihiy has developed the "Revolutions Pack". This pack dosn't work with KernelEX. Is it possible that this two software packs can work together?

Link to post
Share on other sites

Just thought I would drop by and say thanks.....Kernelex4 rc2 fixed several things and did not break anything....as a matter of fact, my machine is more stable than before ... :thumbup


Ps: now if I could just stop flash from hosing things...

Link to post
Share on other sites
I've fixed printf issue for debug setup project. However all other errors are caused by your own modifications to the project files.
Hmm, I didn't modify any project settings apart from output paths (and language -- later edit), AFAIK. I'll checkout the project files fresh and compare with mine. Will report back.


You are right, somehow the Custom Build section was missing from the dsp projects. VC6 must've done something funky. Everything's fine now, including printf. Thank you! :thumbup

[EDIT 2]

There's still one issue left... forgot about it: custom build settings for prep (both Release and Debug) won't work; either bad paths or wrong variables, dunno. Could you please elaborate on what exactly those two steps are meant to do and how to fix it according to my local paths?

$(OutDir)\$(TargetName) $(WkspDir)\apilibs\kexbases

$(OutDir)\$(TargetName) $(WkspDir)\apilibs\kexbasen

--------------------Configuration: prep - Win32 Release--------------------
Performing Custom Build Step on \free\KernelEx\bin\Release\prep.exe
Bad command or file name
Bad command or file name

Edited by Drugwash
Link to post
Share on other sites

Side note: Problem with new KernelEx 4 / FF3 (3.0.6, 3.0.7) - very crash, problem with flash (i trying back to 9r28 - this version minimal problem with imageshack and other ....), any error screen (desktop color). My old problem with KernelEx (3.6a) / FF 3 solved - reinstall nVidia driver (GeForge FX 5200) last original (81.98) in place of unofficial (!). However this "features" for kernelex 3.6a is not valid with kernelex 4... meanwhile :whistle:

Link to post
Share on other sites

Xeno86, is there any dedicated thread for developers of KernelEx, or does the current thread suffice?

I suggest you to keep some regression test suite which would be run every now and then (or at least every day). Just the way Wine project does this. They use the separate program called Winetest:


I just made some runs of it, and it seems to be missing some API functionality. It fails very early with some assert:

Starting up

Assertion failed: pGetUserObjectInformationA(wstation, UOI_FLAGS, &uoflags, size

of(uoflags), &len), file ../../../wine/programs/winetest/main.c, line 152

abnormal program termination

the Winetest source says we fail inside some helper function:

134 static int running_on_visible_desktop (void)
135 {
136 HWND desktop;
137 HMODULE huser32 = GetModuleHandle("user32.dll");
138 FARPROC pGetProcessWindowStation = GetProcAddress(huser32, "GetProcessWindowStation");
139 FARPROC pGetUserObjectInformationA = GetProcAddress(huser32, "GetUserObjectInformationA");
141 desktop = GetDesktopWindow();
142 if (!GetWindowLongPtrW(desktop, GWLP_WNDPROC)) /* Win9x */
143 return IsWindowVisible(desktop);
145 if (pGetProcessWindowStation && pGetUserObjectInformationA)
146 {
147 DWORD len;
148 HWINSTA wstation;
151 wstation = (HWINSTA)pGetProcessWindowStation();
152 assert(pGetUserObjectInformationA(wstation, UOI_FLAGS, &uoflags, sizeof(uoflags), &len));
153 return (uoflags.dwFlags & WSF_VISIBLE) != 0;
154 }
155 return IsWindowVisible(desktop);
156 }

So it seems the GetUserObjectInformationA() call is the first one which could be put into KernelEx regression test (or into the very Winetest also, if it can work together with KernelEx in future:)

Link to post
Share on other sites

Nice work Xeno86 (and Tihiy).

In KernelEx 0.3.x, I had a problem with Norton Disk Doctor taking a long time to run a check:


In KernelEx 4.0, this problem is gone, no more, history!

It's a beautiful piece of enhancement software!

4.0 is faster than 0.3.6, and it does not modify system file binaries (aside from kernel32.dll). :thumbup

BTW, is there a KernelEx 4 install log file somewhere?

Edited by RetroOS
Link to post
Share on other sites

OS : Windows 98SE (english) with 98SE2ME

KernelEx 4.0 RC 2

Program: Sothink SWF Decompiler 4.5 Build 81208

Vendor: SourceTec, Sothink

download link: http://download.cnet.com/Sothink-SWF-Decom...4-10073491.html

homepage link: http://www.sothink.com/product/flashdecompiler/

anyway, what i want to report is, when i tried start program, this weird error message shows:

  • Cannot find import; DLL may be missing, corrupt, or wrong version
    File "KERNEL32.dll", function "GetFileSizeEx" (error 127)

thats odd afaik, GetFileSizeEx already implemented by kernelEx in kexbases.

anyone could recommend a good swf decompiler fow win98SE that support new ActionScript (flash 9 or newer)?

Link to post
Share on other sites
How do I activate AdvancedGDI for a program?

I want to try Inkscape in the new KEX, but it seems like it still doesn't come with AdvancedGDI enabled by default, despite being a GTK2.8 program.

Set it to run in XP mode.
Link to post
Share on other sites

I've tested a couple programs (like Firefox 3 beta 3, Media Player Classic, ffdshow) and I must say that I really like this new version. :)

Xeno, Tihiy - this is an awesome piece of work guys! :thumbup

Btw, after installing KernelEx some of my programs (for example Media Player Classic, PowerStrip) gave me oleaut32.dll error (it disappeared after couple of clicks) but as I presume, this is something specific for my configuration (no such error without KernelEx).

Edited by rainyd
Link to post
Share on other sites
However, Trillian Astra is broken again whereas paths are incorrectly registered, calls user profiles in its' own folder (should be %windir%/application data/trillian), sounds no longer work, and crash logs are no longer saveable (broken path).

Yes, I know I'm quoting myself here.. heh. I'd solved this issue after checking the differences in CORE.INI between RC1 and RC2.

Core.ini from RC2 has the GetVersion strings removed under the Configuration names. For Trillian Astra to function as it did in RC1, Re-adding 'KERNEL32.GetVersionExW=std' under [DCFG1.names.98] resolves the issue.

Link to post
Share on other sites
Is it possible that the internet explorer 7 to work with Windows 98 SE? Or is it technically impossible? :rolleyes:

Good job and very useful project. :thumbup

absolutely impossible, even with KernelEx installed on 98se:




IE7/IE8 depend on XP/Vista specific system DLL files & registry entries. IE7 & higher (even when forced installed on 98se PC) will permanently cripple your 98se computer and you'll have to reinstall 98se from scratch to undo the mess. IE7 on Win9x, NOT worth it!

I did test KernelEx 4.0 RC 2 with FF 3.1b3 and SM 2.0a3, both worked great on an old Win98se computer.

Edited by erpdude8
Link to post
Share on other sites

Create an account or sign in to comment

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

Create an account

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

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Create New...