Jump to content

Creating a Full-Blown Compatibility Layer.


Dibya

Recommended Posts


Dibya, although you can't redistribute modified binaries, you can still make the project open source if you just post the code for the implemented functions and scripts that can patch in the functions on an existing XP system. I think that would be a good idea. Not everyone trusts running some hacked binary that someone put together without knowing exactly what changes were made to it.

Link to comment
Share on other sites

Firing up my XPsp3 machine, address 0x77b51d4a appears to be in function ApphelpCheckInstallShieldPackage in Apphelp.dll. You may need to find a newer version of Apphelp.dll. Also try portable versions of Opera and Chrome (that don't use an installer).

Link to comment
Share on other sites

My take? Let Dibya do his thing to the point of getting it working well, without pestering him about open source and the like.
Whoever wants to take the risk and test it, will do it, no matter what. Either Dibya becomes a trusted source by consensus or not. And, that, only time will tell. Till then, let him work in peace. Blackwingcat and Tihiy never made their products open source and are trusted. And Xeno86 only opened his sources when letting go of the KernelEx project. At this point, such a discussion cannot be more than nuisance. Let there be a product 1st. Then one can talk of opening sources. These're my 2¢.

Link to comment
Share on other sites

BTW Dibya, I think the redirection manifest may be better suit your case than mine, have you tried it on unpatched XP with your modded kernel put in the same directory of the executable?

@FranceBB: if what you mean is Wine, I already knew... I would say even Wine don't claim any compliance yet it's still WIP. Have you test the conformance of WebGL?

Link to comment
Share on other sites

@TuMaGoNx... there are two different implementations to be fair, the one released by KM and the Wine one, which uses OpenGL and that we inherited from Linux. I tried both of them as well as Dibya. 

@Dibya yep, unfortunately the KM ones are pretty old and far from being perfect; the other solution is more reliable. Including WineD3d - as you did - was the right choice ;)

Link to comment
Share on other sites

18 hours ago, TuMaGoNx said:

@Dibya: I think targeting "fast paced" technology such Browser is impossible... it's always employ cutting-edge ones (virtualization, memory management, MT) thats beyond XP scope. If any it would be more and more "disabled features" if it allowed to run on XP.

BTW I think I'd abandon patchless idea.. hooksubsystem itself is hackish and might be restrictive, I can't use redirection manifest either as having another "kernel32.dll" often trigger DEP. Not to mention I get chicken-egg situation as my dll (the xp kernel32 part) is just forwarder not even wrapper, the redirection manifest would meant any dependencies (dll) would call the fake kernel instead of just the executable.

BWC also faced same .

Crome based browser are blocked in xp , I have run crome and opera with xp compability settings same error shown under 8.1.

Crome 50 & Opera 38 works flawlessly under XP

Thanks Jumper , FranceBB, DEncorso, TuMaGoNx.

Hooking subsystem under xp is impossible . XP is quite strict regarding Security.

following function can make most 7 driver work on xp

EtwRegister
EtwUnregister
EtwWrite
PcwAddInstance
PcwCloseInstance
PcwCreateInstance
PcwRegister
PcwUnregister
IoSetDevicePropertyData
IoGetIoPriorityHint
IoQueueWorkItemEx
PoRegisterPowerSettingCallback
PoUnregisterPowerSettingCallback
PsSetCreateProcessNotifyRoutineEx
KeGetCurrentProcessorNumberEx
RtlIsNtDdiVersionAvailable

@TuMaGoNx

no need to give up your idea .  please see the oldcigarates pack on win2k gaming forum . that will solve every problem. it is easier to patch known dll system.

Keep faith on your self

Edited by Dibya
Link to comment
Share on other sites

15 hours ago, TuMaGoNx said:

@Dibya: "it is easier to patch known dll system" I've read the registry, to me this is as hackish as hooksubsystem :) (with system-wide consequence) I don't want to touch the system as much as possible. It's more "normal" to me to patch to target apps as I didn't aim non-trivial purpose with the shims. Just for those apps that "miscompiled" without XP support enabled in VC++ and those that "artificially" drop XP by using few missing APIs.

"Crome based browser are blocked in xp , I have run crome and opera with xp compability settings same error shown under 8.1." You should just download and read the chrome source code rather than "probing" what happened underneath. It's quite clear what's the new features and requirement. So what if you could run few version of it, as I said browser evolve quickly with hundreds of developer backing up.

Then create a automated patcher at last . I dont think people will be happy in carrying cff or hxd.

Best of Luck. No problem i will make crome work anyhow. If i can backport intel hd gfx for 7 to xp then what that hell crome is.

Link to comment
Share on other sites

On ‎10‎/‎10‎/‎2016 at 2:48 PM, dencorso said:

My take? Let Dibya do his thing to the point of getting it working well, without pestering him about open source and the like.
Whoever wants to take the risk and test it, will do it, no matter what. Either Dibya becomes a trusted source by consensus or not. And that only time will tell. Till then, let him work in peace. Blackwingcat and Tihiy never made their products open source and are trusted. And Xeno86 only opened his sources when letting go of the KernelEx project. At this point, such a discussion cannot be more than nuisance. Let there be a product 1st. Then one can talk of opening sources. These're my 2¢.

A few pages back, there was a discussion about open source and not being able to distribute modified binaries, so I was just offering a suggestion about that.

Link to comment
Share on other sites

14 hours ago, TuMaGoNx said:

sorry I didn't meant belittle your works and spirit, me myself have experience to keep webkitgtk port available on win32 but with every minor version come up with huge changes, new API and refactors. Something that one silly men like me very easy to get lost... and eventually given up. of course you might be good enough to make it. who knows.

"Then create a automated patcher at last . I dont think people will be happy in carrying cff or hxd."
I use can only open source apps with open source project. I use gsar to replace string in binary, at the moment the mass-patcher (without signature unsginer) and dlls should be under 64KB compressed. not yet make 7sfx installer..

https://en.wikipedia.org/wiki/Google_Chrome_version_history
I can't say they into removing stuff than adding stuff, the fact that you're still at version 50 show that you do face difficulties.

As part of development cycle of course they would remove "redundant" code, to keep on track and freed the roadblock (that's XP support) to implement something "better". That's normal, like the move on MediaFoundation have you thought about it? how you backport it? This is what I immediately see about the current of Chrome: they "really" are moving away, fast. It's true that new features doesn't always meant new requirement Firefox for ex. are hanging on XP partly because they have netscape legacy codebase. But chrome is exception, this thing is so wild to begin with.

https://en.wikipedia.org/wiki/Backporting
Just realize it now, gotta to change my project desc. Oops.. example of backport is: WIC, WSSAPI, RSAENH, PowerShell and so on. What we do is extending OS.

Surely Go ahead . Currently i am happy with palemoon. FranceBB is compilation  master. He knows C very well . He is busy at work for a while i believe one day he will make crome work as he did with FFtrans and Format factory.

Best of Luck my brothers (FranceBB & TuMaGoNx)

Tomorrow i may come up with my ExtendedXP 0.10 . if you guys wish to see what going simply pm me.No installer made directly i will provide the files.

Edited by Dibya
Link to comment
Share on other sites

In all honesty guys, any attempt to extend XP's kernel and API functionality will most likely require disabling/circumventing Windows File Protection and possibly other "security" functions. I would simply accept this as a given prerequisite and just move forward... It comes down to a choice between "do I want to leave things as they are for security" or "do I want to extend the possibilities of XP?" I think you're worrying too much about this point. Most users who would be willing to use a "KernelEx" type project are power users who are certainly familiar with the risks of running "non-secure" systems. In the end security comes down to the user, regardless of what operating system they're using.

Link to comment
Share on other sites

15 hours ago, LoneCrusader said:

In all honesty guys, any attempt to extend XP's kernel and API functionality will most likely require disabling/circumventing Windows File Protection and possibly other "security" functions. I would simply accept this as a given prerequisite and just move forward... It comes down to a choice between "do I want to leave things as they are for security" or "do I want to extend the possibilities of XP?" I think you're worrying too much about this point. Most users who would be willing to use a "KernelEx" type project are power users who are certainly familiar with the risks of running "non-secure" systems. In the end security comes down to the user, regardless of what operating system they're using.

I found a way to make moded dll act as native dll. No more WFP issue. Let it be enabled.

Windows XP rules forever

For me palemoon is more stable.

Edited by Dibya
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...