Jump to content

Another beta for you to try


W3bbo

Recommended Posts

This isn't an xpize beta, but something I threw together today.

I'm tired of all the people emailing me about SP3 support. So until I get xpize 5 done, here's my own SP3-compatible uxtheme.dll patcher that doesn't suck.

I could have been smart and done a diff patching operation, but for now it just uses LZMA-compressed DLL files from Rafael Rivera.

It supports:

Windows XP SP3 x86

Windows XP SP2 x64

Windows Server 2003 SP2 x86

Windows Server 2003 SP2 x64

In addition to English it includes language-specific files for x86 XP in German and Spanish, and Server 2003 in German. x64 is English-only.

You can install the English version on any language OS, it just means that if uxtheme were to crash (unlikely) the messages would be in English and not in your installation language.

Whilst I have an in-depth knowledge of x64 systems, I don't have an x64 system with me to test it on; so if anyone could test it that'd be great. Don't worry about running this on a production system since it either works or it doesn't.

I'm having some DNS issues with the anol.is domain name so I've put it up on the xpize website.

http://www.xpize.net/downloads/UxTheme09.zip

Enjoy.

Link to comment
Share on other sites


  • 2 weeks later...
This one - Universal Theme Patcher - is a lot better option.

What makes that a better option? In all likelihood that "Universal Theme Patcher" is using the same source DLLs that were created by Rafael Rivera, which means that the end result is the same as W3bbo's. And if it's not using Rivera's patch, then W3bbo's is better. I don't really see in instance in which that one would be better at all, let alone "a lot better."

Link to comment
Share on other sites

Well, apart from working on anything from XP to V7, that one is patching the actual files you have on your system, not just dumping some prepatched files, so it's version and language independent.

Actually, WindowX's patcher (the same as Neowins) doesn't apply a binary diff to the files, it contains all the files within it, that's why its a few megabytes to download. It isn't language-independent either since the bytes to modify are different in each different language SKU.

Rafeal has agreed to walk me through the manual patching process later this year since he'll be unavailable due to other commitments.

Link to comment
Share on other sites

Sorry, I don't understand your reply, unless you didn't follow the link I posted and have mistaken the program I linked to with some other with similar name. The patcher I linked to is only 72 kB big, so it definitely doesn't contain any prepatched files.

Link to comment
Share on other sites

I tried this patcher and it gave me problems. It told me that the uxtheme.dll couldn't be found so explorer.exe could not be loaded. The OS continued loading but I all could see what the wallpaper. I did find a uxtheme.dll in the system32 folder. It must have been the incorrect one though. The OS loaded like it should once I changed that dll file.

The OS I am trying the patcher on is XP x64 SP2.

Edited by Ford Freak
Link to comment
Share on other sites

  • 2 weeks later...
I tried this patcher and it gave me problems. It told me that the uxtheme.dll couldn't be found so explorer.exe could not be loaded. The OS continued loading but I all could see what the wallpaper. I did find a uxtheme.dll in the system32 folder. It must have been the incorrect one though. The OS loaded like it should once I changed that dll file.

The OS I am trying the patcher on is XP x64 SP2.

I tested it on my own computer which is XP x64 SP2. Did you restart your computer immediately after running the patcher and did you open regedit before rebooting?

It is x64 aware and will patch the 32-bit version under C:\windows\syswow64\ in addition to the 64-bit version under \system32, so this warrants further investigation.

Link to comment
Share on other sites

Sorry, I don't understand your reply, unless you didn't follow the link I posted and have mistaken the program I linked to with some other with similar name. The patcher I linked to is only 72 kB big, so it definitely doesn't contain any prepatched files.

Sorry, my mistake.

The patcher you've referenced works using a system I want to implement myself, but my knowledge of assembly (and reverse-engineering of binary software in general) isn't strong enough.

Basically his works by opening up the uxtheme.dll, looking for the CPU instruction that does the conditional jump if it fails the signature check and replaces that instruction with an unconditional jump to where it continues on its merry way. This means it will work on any language and release of Windows so long as it does the same check or matches whatever heuristics the developer coded into his patcher.

So there are four patches out there and here's how they work in comparison:

a) WindowsX's patcher: contains the replacement files within the program and overwrites the original (whilst invoking System File Protection). Bad.

b) Mine: contains the replacement files and overwrites the original using PFRO. Inherently bad, but an improvement on WindowsX's

c) FlyAKite's: contains a hardcoded diff to apply to known versions of uxtheme.dll. Good, but requires manual updates when a new version comes out. Kite's hasn't been updated since SP2 came out making it useless for SP3 computers.

d) Deepxw's: uses a heuristic approach to find the changes to make, then applies them. Best.

Edited by W3bbo
Link to comment
Share on other sites

I tried this patcher and it gave me problems. It told me that the uxtheme.dll couldn't be found so explorer.exe could not be loaded. The OS continued loading but I all could see what the wallpaper. I did find a uxtheme.dll in the system32 folder. It must have been the incorrect one though. The OS loaded like it should once I changed that dll file.

The OS I am trying the patcher on is XP x64 SP2.

I tested it on my own computer which is XP x64 SP2. Did you restart your computer immediately after running the patcher and did you open regedit before rebooting?

It is x64 aware and will patch the 32-bit version under C:\windows\syswow64\ in addition to the 64-bit version under \system32, so this warrants further investigation.

I can't remember if I rebooted right away or not. What should I open regedit for though?

Link to comment
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...