PSFExtractor has been integrated into UUP converter from UUPDump, adguard, etc since May. It has the ability to transform CAB + PSF express format into an applicable version. Just place both CAB and PSF file in the same folder and rename them to have the same name (if not), drag the CAB file onto PSFExtractor.exe and you'll have the applicable version in a minute. The extracted folder contains the update and you can use dism to install it, or use CABARC to make your own CAB.
Code: Select all
PSFExtractor.exe Windows10.0-KB5004564-x64.cab
As some of you might know, Windows 10 build 21382 already had this format tested. But the express format exists everywhere, not limited to recent CUs. In fact, almost every update also exists in the express format, however only WU could handle it correctly before. This is when manual mode of PSFExtractor comes in handy.
The CAB file contains manifests, while the PSF file contains actual deltas. This applies to all express format. Inside the CAB file there's a XML file which contains the information we need to extract deltas from the PSF file. Sometimes you need to find the XML file by yourself. If we manually specify XML file to extract a PSF, like Windows10.0-KB5004564-x64.psf, the command line will be like this:
Code: Select all
PSFExtractor.exe -m -v2 Windows10.0-KB5004564-x64.psf Windows10.0-KB5004564-x64\express.psf.cix.xml Windows10.0-KB5004564-x64
That's it.
Remember we have Windows Vista SP2 build 6002.16489 en-us in express format only? It's time to install it! Extract the express CAB and we found 6 XML files, for 5 languages and one neutral respectively. We have 2 PSF files, one neutral and the other one en-us. Now we can extract the PSF with:
Code: Select all
PSFExtractor.exe -m -v2 windows6.0-kb948465-x86-neutral.psf windows6.0-kb948465-x86-express\windows6.0-kb948465-x86-neutral.psf.cix.xml windows6.0-kb948465-x86-express
PSFExtractor.exe -m -v2 windows6.0-kb948465-x86-en-us.psf windows6.0-kb948465-x86-express\windows6.0-kb948465-x86-en-us.psf.cix.xml windows6.0-kb948465-x86-express
Use pkgmgr or Dism++ to install the service pack and it will just works as any non-express update!
But it doesn't stop here. We have Windows XP SP3 build 2600.5508 ja-jp only in express format, too. It's a little different from what NT6.0+ uses. PSFExtractor supports the old format since v2.00. To extract the PSF, we need to first extract the express installer and use the PSM file in it.
Code: Select all
PSFExtractor.exe -m -v1 windowsxp-sp3-x86fre-jpn-5508.psf windowsxp-kb936929-sp3-express-x86-jpn\WindowsXP-SP3-x86fre-JPN-5508.psm windowsxp-kb936929-sp3-express-x86-jpn
With this tool, any PSF (with corresponding XML/PSM) can be processed. Express installers are finally defeated!
Github repository: https://github.com/Secant1006/PSFExtractor