schwups Posted January 25, 2022 Author Posted January 25, 2022 (edited) My Kstub.ini had exceeded the character limit, too! A Tool counted more than 17000 letters. Here is my ini file (Not too many characters/ trimmed notes) also with latest definitions of jumper. It is experimental and it's still not suitable for Firefox 57 (Quantum) or Serpent 55 or Chrome based browsers.stubs.7z Supplement: APISetStubreg.txt Menu/submenus problem K-Meleon - quite interesting but a bit obsolete now, because that is not suitable for K-Meleon76: The replacement of K-Meleon.exe version 75.1 (Gecko31) by 75.0 makes the submenus readable. K-Meleon.exe 75.0 is compatible with KM 75.1. I only had replaced the Kplugins bookmarks.dll, favorites.dll and hotlist.dll by those of 75.0. Then I had changed version info of the exe with ResourceHacker and Hex Editor from 75.0 -> 75.1. A small blemish or side effect is that there are question marks in the OS titlebar as with version 74. Furthermore, I began to test Win 7 files. Currently used APPHELP.DLL, AUTHZ.DLL, GDIPLUS.DLL, NTDSAPI.DLL, RASMAN.DLL, REGAPI.DLL, SAMLIB.DLL, utildll.dll, W32TOPL.DLL, WinSCard.dll, WINSTA.DLL. Not used: DNSAPI.DLL. Icecat38 doesn't start with ACTIVEDS.DLL, ADSLDPC.DLL, MPRAPI.DLL, RASDLG.DLL, RTUTILS.DLL. Prolonged testing could reveal more problems? I also began to test IE8 and 11 files and some more system files. Also used: XP 5.1.2600.6198 Imagehlp (but usually 5.0.2195.6613 2KSP3) My tests with msvcrt of XP, Vista and 7 are still unsuccessful. Edited January 26, 2022 by schwups
Goodmaneuver Posted January 26, 2022 Posted January 26, 2022 (edited) On 1/26/2022 at 9:36 AM, schwups said: A Tool counted more than 17000 letters. What tool was that? Vista does not like saving a reg file download it seems so could you rename APISetStub a txt or zip it? On 1/26/2022 at 9:36 AM, schwups said: My Kstub.ini had exceeded the character limit, The character limit was solved with Kstub824.dll. Apart from increasing the limit a little over Kstub823 what is done is have 2 or more INIs and 2 or more Kstib824.dll files in the KernelEx folder. So you use Kstub824.dll and copy this file and rename it Kstub825.dll for example then have corresponding INIs of the same names in the KernelEx folder. You then split the definitions across the 2 or more INIs. Works like a charm like I showed https://msfn.org/board/topic/173233-kernelex-45-core-updates-45201625/?do=findComment&comment=121008 and Jumper said https://msfn.org/board/topic/157173-kext-diy-kernelex-extensions/?do=findComment&comment=1208163. To overcome MSVCRT missing functions I suggest using Win2K3SP2's MSVCRT as MSVCRT. Schwups you know this file works if you redirect NTDLL NtClose to GDI32 DeleteObject. This has the advantage of having ??0exception@@QAE@ABQBDH@Z function where as any other known substitute did not have this. It works with VLC and there are no useless functions that are not used as it is a real MSVCRT. MSVCR70 as a MSVCRT substitute is pretty good but it did stop DivX Player and you will gain these functions over those of MSVCR70. ??0exception@@QAE@ABQBDH@Z __CppXcptFilter __CxxFrameHandler2 _abs64 _get_heap_handle _mkgmtime _mkgmtime64 _rotl64 _rotr64 Once using the 2K3 MSVCRT Black Wing Cat's GDI wrapper Msvcrt.dw7 from Dx9W2kFx.zip can be used by directly linking the DLLS that require it. (I do not know where Dx9W2kFx.zip is located on the WWW now) This will improve the processing speed over using Kstubs as function redirection. Add these in Kstubs for BWCCRT where BWCCRT is the name of the Msvcrt.dw7 wrapper as they were not included and are redirected to MSVCRT (2K3). [BWCCRT] ??_U@YAPAXIHPBDH@Z=>MSVCRT: ??0exception@@QAE@ABQBDH@Z=>MSVCRT: ??2@YAPAXIHPBDH@Z=>MSVCRT: Edited January 27, 2022 by Goodmaneuver
schwups Posted January 26, 2022 Author Posted January 26, 2022 (edited) 2 hours ago, Goodmaneuver said: 16 hours ago, schwups said: A Tool counted more than 17000 letters. What tool was that? Wortgenerator/wordcreator: https://www.sttmedia.com/wordcreator - Additionally integrated Counter for letters, characters and syllables I used the old version https://www.sttmedia.com/download=WordCreator. I haven't tried the new on ME. 2 hours ago, Goodmaneuver said: Vista does not like saving a reg file download it seems so could you rename APISetStub a txt or zip it? changed Edited January 26, 2022 by schwups
schwups Posted January 26, 2022 Author Posted January 26, 2022 (edited) On 1/26/2022 at 2:09 PM, Goodmaneuver said: The character limit was solved with Kstub825.dll. Apart from increasing the limit a little over Kstub824 what is done is have 2 or more INIs and 2 or more Kstib825.dll files in the KernelEx folder. So you use Kstub825.dll and copy this file and rename it Kstub826.dll for example then have corresponding INI's of the same names in the KernelEx folder. You then split the definitions across the 2 or more INIs. Now obsolete: Known issues: plug-in limit is 4: std + kexbases + kexbasen + two more Does this mean unlimited plugins are possible? Do you have already Kstub825.dll? On 1/26/2022 at 2:09 PM, Goodmaneuver said: To overcome MSVCRT missing functions I suggest using Win2K3SP2's MSVCRT as MSVCRT. Schwups you know this file works if you redirect NTDLL NtClose to GDI32 DeleteObject. This has the advantage of having ??0exception@@QAE@ABQBDH@Z function where as any other known substitute did not have this. It works with VLC and there are no useless functions that are not used as it is a real MSVCRT. MSVCR70 as a MSVCRT substitute is pretty good but it did stop DivX Player and you will gain these functions over those of MSVCR70. ??0exception@@QAE@ABQBDH@Z __CppXcptFilter __CxxFrameHandler2 _abs64 _get_heap_handle _mkgmtime _mkgmtime64 _rotl64 _rotr64 Once using the 2K3 MSVCRT Black Wing Cat's GDI wrapper Msvcrt.dw7 from Dx9W2kFx.zip can be used by directly linking the DLLS that require it. (I do not know where Dx9W2kFx.zip is located on the WWW now) This will improve the processing speed over using Kstubs as function redirection. Add these in Kstubs for BWCCRT where BWCCRT is the name of the Msvcrt.dw7 wrapper as they were not included and are redirected to MSVCRT (2K3). [BWCCRT] ??_U@YAPAXIHPBDH@Z=>MSVCRT: ??0exception@@QAE@ABQBDH@Z=>MSVCRT: ??2@YAPAXIHPBDH@Z=>MSVCRT: Yes, I tried MSVCRT (BCW) repeatedly. In practice, however, I do not recognize an advantage over msvcr70 and I don't use a DivX player. Both files have a few differences, but they are very similar. These had no discernible effect on my browser tests so far. To make the versions clear. The 2kSP4 file version I have is 6.1.9844.0 (281KB), BCW's is 7.0.3790.4341 (srv03_sp2_qfe.080724-1204) (346KB), msvcr70 (332KB) 7.0.9981.0 and the ME version is 6.1.8637.0 (285KB). And finally there is latest version 6 (273KB) 6.1.9848.0 and msvcr80 (572KB) version 8.0.40607.52. All are basically usable. Edited January 27, 2022 by schwups
jumper Posted January 26, 2022 Posted January 26, 2022 I don't know what the current plugin limit is. I raised all the array size constants, but never actually discovered what was causing the limit. The code all looked good. Haven't looked at it lately. To test, put kexbasen and kexbases on opposite ends of contents= and increase the number of dummy plugins between them. When an app that needs both stops working, we're past the limit. Also test Ktree; there is no fixed limit, but there appears to be a 300 char limit on the retrieved contents= string value. Character count in stubs.ini needs to include white space, but nothing not a section name or inside a section. Best estimate is to save from first section to eof, then look at the filesize. All bets are off when sections are not all fully sorted. These aren't.
Goodmaneuver Posted January 27, 2022 Posted January 27, 2022 (edited) 13 hours ago, schwups said: Do you have already Kstub825.dll? No I made a mistake Kstub824.dll is the latest. I have edited last post. 13 hours ago, schwups said: Now obsolete: Not so, Jumpers comment was after Kstub824 and Kstub823 did not work like that, I tried it. 13 hours ago, schwups said: plug-in limit is 4: std + kexbases + kexbasen + two more Not true for me, I have made a Core.ini with 6 Plugins and KernelEx is still working. 13 hours ago, schwups said: BCW's is 7.0.3790.4341 (srv03_sp2_qfe.080724-1204) (346KB), No. that is Windows 2K3SP2 as it says. This file was included in at least one of BWC's archives. It should be 341KB though when using system file properties. BWC's wrapper is a wrap of 2K3SP2 Msvcrt and Msvcr80 and was named a DW7 type file. It is named MSVCRS in the picture. Jumper, the picture is from a build that has KernelEx v4.5.2016.25 updates2+tools but it works with KernelEx v4.5.2016.25 updates3+tools also. I have stuck with the CORE ini that I had that worked and had not changed the configuration naming. CORE_5.zip Edited January 27, 2022 by Goodmaneuver Have included CORE.ini if you are interested.
jumper Posted January 27, 2022 Posted January 27, 2022 Ktree shows what's in core.ini, not if it works. KernelEx still works even if not all the plugins do. So more than four plugins has yet to be properly tested.
Goodmaneuver Posted January 27, 2022 Posted January 27, 2022 (edited) 2 hours ago, jumper said: Ktree shows what's in core.ini, not if it works. KernelEx still works even if not all the plugins do It depends what you mean by that. Usually KernelEx stops completely if a criteria is exceeded like the 17000 characters per ini. If KernelEx is not working then Ktree does not work either. That I have tested multiple times and is advisable before a reboot to at check if Ktree works after making CORE.ini or Kstub changes. I have tested 5 plugins and KernelEx works for sure. I have the log files for both kstub824 and kstub825. So the 5 plugins are Std, Kexbases, Kexbasen, Kstub824, and Kstub825. Unless Std is not a plugin then I will have to shift more definitions to the third Kstub. I have not been working on the WinME/KernelEx much of late. Edited January 27, 2022 by Goodmaneuver
schwups Posted January 27, 2022 Author Posted January 27, 2022 I guess I took that 7.0.3790.4341 (srv03_sp2_qfe.080724-1204) (346KB) from Win2000 Extended Kernel. Therefore Msvcrt.dw7 from Dx9W2kFx.zip is another one I don't have.
jumper Posted January 28, 2022 Posted January 28, 2022 Do not use any CRT that is not readily available to everyone. Anything else hinders development of KernelEx. A final release version for end users must work with the standard libraries and/or those from common USP's. If there are functions missing from those libraries that you have not reported, please report them now .
defuser Posted January 29, 2022 Posted January 29, 2022 FirefoxPortableLegacy 52.9.0 works for everyone with sound? For example, if you open any YouTube video.
schwups Posted January 29, 2022 Author Posted January 29, 2022 No - https://msfn.org/board/search/?q=sound&quick=1&type=forums_topic&item=181424 I myself have no sound problems, but it happened on VM's. What kind of system do you have?
defuser Posted February 1, 2022 Posted February 1, 2022 (edited) I managed to find out using VM's that there is indeed sound in the FirefoxPortableLegacy52_52.9.0 running in the original Windows ME environment. However, as it turned out later, under the same conditions, neither in the original nor in the updated unofficial SP3 "https://www.htasoft.com/u98sesp/" Windows 98 SE, there is no sound, as in the original clean Windows 98 FE (My main system). These are the kind of pies. Do you have the same thing? Edited February 1, 2022 by defuser
schwups Posted February 2, 2022 Author Posted February 2, 2022 On 1/28/2022 at 2:29 AM, jumper said: Do not use any CRT that is not readily available to everyone. Anything else hinders development of KernelEx. A final release version for end users must work with the standard libraries and/or those from common USP's. If there are functions missing from those libraries that you have not reported, please report them now Of course, this is undoubtedly reasonable. I usually use msvcr70 as msvcrt. Nevertheless, I find it quite interesting to see how the system behaves with other files. You told in 360EE and IE9 ini msvcrt.dll of Vista is needed. That was the reason why I tried to hex and use msvcrt of XP, Vista and 7.
jumper Posted February 4, 2022 Posted February 4, 2022 The next step is to determine why it is needed so that functionality can be added to KernelEx.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now