Skip to content

Release Notes

Latest
Compare
Choose a tag to compare
@deadash deadash released this 25 Oct 03:28
· 2 commits to main since this release
a565257

Introducing MakeXPStub: Modify Your Executables to Run on Windows XP

Overview

This release introduces MakeXPStub, a utility that allows you to transform any given .exe file to be compatible with Windows XP. The utility comes with built-in support for generating minimal patches, making it extremely lightweight and easy to implement.

Features

  • Simple CLI: Use makexpstub.exe --input a.exe --output b.exe to create an XP-compatible executable.
  • NSIS Patch Generation: Utilize GenPat.exe to generate an NSIS compatible patch file: GenPat.exe a.exe b.exe xp.pat.
  • NSIS Scripting Support: Our release includes a pre-written NSIS script snippet that handles the patching and supports both XP and newer versions of Windows with minimal file size overhead.

Usage

Transform your EXE

Execute the following command to create an XP-compatible b.exe from a.exe:

makexpstub.exe --input a.exe --output b.exe

Generate the NSIS Patch

Generate the patch file using:

GenPat.exe a.exe b.exe xp.pat

Add to Your NSIS Script

Include the following NSIS script snippet to handle both XP and newer Windows versions:

${If} ${IsWinXP}
    File "/oname=~a.tmp" "a.exe"
    File "..\xp.pat"
    vpatch::vpatchfile "xp.pat" "~a.tmp" "a.exe"
    File "..\xpstub.dll"
    File "..\bcrypt.dll"
    Delete "$INSTDIR\xp.pat"
    Delete "$INSTDIR\~a.tmp"
${Else}
    File "a.exe"
${Endif}

What's Next?

We are continuously working on improving MakeXPStub and are open to community contributions and suggestions. Feel free to open issues or submit pull requests.

Thank you for using MakeXPStub!