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. 


jumper

KernelEx 4.5 Core Updates (4.5.2016.17)

Recommended Posts

Yes.

Unfortunately, most of the stack dump is consumed by a local string buffer containing:

EHS/LHLL9V-PalP D/ yOatacejbEN:tEPEFABFHAAAAAOAAAAAB
Debugging:
Stack dump:01bdee70 7f2f879b ffffffff 4548532f ...         ^^^^^^^^DumpPE -disasm Unicows.dll:7F2F84F3                    ShellExecuteExW:...7F2F8796 E86927FEFF             call    fn_7F2DAF047F2F879B 40                     inc     eax^^^^^^^^
Wmpshell thinks it's running on W2K and is calling Shell32:ShellExecuteExW which is being forwarded to Unicows:ShellExecuteExW by Kexbasen.dll. Ideally this would work, so try using the Kexbasen.dll from 4.5.2 in case that's the problem.

To avoid the problem, set the mode for Wmpshell and/or Explorer to 98se or BaseEnhancements (DCFG1).

I'm still working on ways to make SP3 and Kex compatible. It may be necessary to disable KernelEx on some or all files upgraded or added by SP3. Many of those files adapt their behavior to the OS they're running on. They've been tested to work on 98se without KernelEx, so disabling KernelEx on them shouldn't be a problem and should help.

>100% reproducable: Install MPlayer 9.0, SP3 and KEX 2015.9 in any order, double click media file. -> Crash

Try installing just WMP9 and test.

Then add KernelEx version 4.5.2, defaulting to Disabled.

Add SP3 minimum/base install.

Add SP3 extras.

One at a time add my v4.5.2015.9 builds of:

+ KernelEx.dll

+ Kexbases.dll

+ Kexbasen.dll

If any cause a failure, try replacing it from GhostlyDeath build.

Later enable KernelEx on only the apps that need it.

Share this post


Link to post
Share on other sites

Your suggestion to disable kex for wmpshell.dll has done the trick so far... If I get the time I'll do it more thoroughly as you suggested.

 

Thanks a ton for your time and engagement!

Share this post


Link to post
Share on other sites

@Jumper - Thanks for the insight.  I never considered changing compatibility mode for DLLs... DUH!  Disabling extensions for SetupAPI.dll did indeed allow the XP version installed by U98SESP3 to load at Windows startup.  

Interestingly, changing compatibility explicitly to "Windows 98 SE" (or to Millennium, 2000 SP4, or XP SP2) did *not* work -- the error continued: "The SETUPAPI.DLL file cannot start".  Only "Disable KernelEx extensions" cleared it.  

- Doug B.
 

Share this post


Link to post
Share on other sites

I just tried the latest CamStudio (2.7) on Windows 98 SE using release 9. It runs, except that it produces garbage avi files, and crashes on exit with this error:

RECORDER caused an invalid page fault inmodule KEXBASES.DLL at 0167:bfa494f3.Registers:EAX=00000000 CS=0167 EIP=bfa494f3 EFLGS=00010287EBX=00528290 SS=016f ESP=00e2fa2c EBP=00e2fa40ECX=00e2fa70 DS=016f ESI=00e2fa70 FS=0e9fEDX=01110000 ES=016f EDI=0110d0a0 GS=0000Bytes at CS:EIP:5f 5e 5b c9 c3 55 8b ec 83 ec 0c 8b 45 0c 25 ff Stack dump:0110d0a0 00e2fa70 00528290 10200000 8172a1e8 00e2fa4c 78083194 780b1598 00e2fa5c 7807b446 780b1598 005717fc 00e2fa74 7805ba23 00000000 01111128 

Share this post


Link to post
Share on other sites

Does CamStudio v2.7 (or earlier) work correctly under KernelEx 4.5.2 or earlier versions of KernelEx 4.5.2015?

Share this post


Link to post
Share on other sites

The same issue (both the kexbases crash and the garbled video output) happen with Camstudio 2.7 on vanilla KernelEx 4.5.2 and KernelEx 4.5.2015.9, so it doesn't appear to be a regression. Camstudio 2.0 works flawlessly, and doesn't even require KernelEx. I haven't tried 2.6, though.

Share this post


Link to post
Share on other sites

Until recently, I wasn't aware of KernelEx 4.5.2015 Updates.

I downloaded the files.

The only thing that made any sense to me were the DLLs.

I extracted the DLLs from Release.7.7z. I assumed Release.4.7z and 5.7z were older
updates.

Rebooted to a full command prompt (before Windows starts).

I ran the included batch file, x.bat. It seemed to be overwriting the old DLLs, but
it didn't. I went to command prompt again and used a simple COPY *.* command.
That worked.

Booting back into Windows, I immediately tried running an app dependent on KernelEx.
It failed. When I opened the property sheet tab something was wrong. Selecting any
of the compatibility modes was impossible. I hit "apply" but it wouldn't hold.

I ran "Verify Installation." It said KernelEx was not properly installed. Obviously, the
updated DLLs were not recognized.

Even though this is 98SE, I've got apps that restore the system to a previous state, so
it was easy to reverse the damage.

Like I said, I downloaded all the files listed at the beginning of this thread. OK, so I
updated the DLLs. Should I just copy everything else into the KernelEx directory?
If I do, will the updated KernelEx function properly?

Share this post


Link to post
Share on other sites

What you did should have worked.

Did the batch file give you an overwrite prompt for each DLL?

Are the DLL files in your C:\Windows\KernelEx folder now all exactly the same as those in the update 7z file?

You could try re-registering them.

:)

Share this post


Link to post
Share on other sites

Thanks Dave-H.

I coul run 50 diagnostic apps. They would all show my copy of 98SE is fully functional.
For some reason, I have very unusual problems that no one can explain.

Just like "COPY *.*" the batch file prompted with YES/NO/ALL. I selected "A" and it
appeared to overwrite the old DLLs with the new. The date for the new DLLs is 1/22/15.
When I booted into Windows I expected to see those dates. Instead, the old DLLs were
still there, dated 11/14/11.

I've seen plenty of batch files fail. That doesn't mean the author (including my own) made
an error. Minor changes in the command structure of a batch file will frequently fix the
problem.

I didn't need a batch script to copy three files. Returning to command prompt and using
the "copy all" command was successful.

I apologize for my ignorance, Dave-H. I'm not sure what you mean by "re-registering."
Running the old KernelEx 4.5.2 Setup won't install the new DLLs. You would have to
overwrite the old DLLs with the new in the setup package. I don't think you're referring
to a Registry hack, are you?

Here's a link about re-registering apps in Windows 10/8:

http://www.thewindowsclub.com/re-register-windows-store-apps

Tell me how to "re-register" KernelEx in 98SE and I'll do it immediately.

Share this post


Link to post
Share on other sites

I just meant re-registering the DLLs with Windows by running "regsvr32 C:\Windows\KernelEx\xxxxx.dll" for each one in turn.

I'm not actually sure whether they even need registering, but it can't do any harm!

If you just get an error message when you try they probably don't support it.

:)

Share this post


Link to post
Share on other sites

I found the cause and solution.

Frankly, I don't want to know the reason for this problem. It doesn't matter.

I just checked the size of all three DLLs:

KernelEx.dll - 51KB - Correct
Kexbasen.dll - 100KB - Correct
Kexbases.dll - 0 Bytes - Not Correct!!

I copied Kexbases.dll again. Now it's the correct size - 231KB.

KernelEx has been successfully updated.

Thanks again, Dave-H.

Share this post


Link to post
Share on other sites

How strange! Presumably your copying of kexbases.dll actually failed for some unknown reason even though it appeared to work.

Glad you got it sorted anyway.

Cheers, Dave.

:)

Share this post


Link to post
Share on other sites

Hi Jumper, browsing the internet is getting harder and harder almost every day now with my old SeaMonkey 2.0.14 and the browser printing problem returned also with my dedicated print server !!  (My old desktop file/print-server died a few weeks ago ...)

So I was wondering if there will be any more updates of KernelEx ?

Share this post


Link to post
Share on other sites

Yes. :yes:

Kexports: For exporting KernelEx get_api_table() API's.

... 1) put Kexports.exe (or shortcut) in SendTo folder

... 2) send one or more KernelEx dlls or folders to it

... 3) INI file with export list will be created for each KernelEx dll found

Kexports.2.7z

Edited by jumper

Share this post


Link to post
Share on other sites

Hi Jumper, I have sent the folder containing the portable SeaMonkey 2.6.1 to Kexports but I get result 0 and no INI. At least I do not find one.

Does it mean that SM 2.6.1 is as compatible to the current KernelEx built as possible ?

Share this post


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.

×