Jump to content

ImportPatcher.41 - Find and fix dependency problems


jumper

Recommended Posts


> Win XP SP3 kernel32.dll v. 5.1.2600.6293

Link is to a patcher. No Kernel32.dll file. :(

Of course the kernel32.dll (both the gdr and the qfe versions) are there! With all due respect, haven't you ever heard about Intra-Package Deltas-Aware Packages? :blink:

Do the following: under win 2k or higher, download file, put it in an arbitrary empty directory, then open a DOS-box there and run:

WindowsXP-KB2758857-x86-ENU /x:..\thefiles <Enter>

It'll fully unpack to the (newly created) thefiles subdirectory of your arbitrary empty directory.

Link to comment
Share on other sites

The free app Universal Extractor can also easily open IPD's - Intra-Package Deltas-Aware Packages.

Home - http://www.legroom.net/software/uniextract

Gora (part of their design/test team) modded discussion - http://www.ryanvm.net/forum/viewtopic.php?t=9771

Repacked installer of Gora's mod (by Ricktendo) - http://www.wincert.net/forum/topic/9785-repak-universal-extractor-16166d-gora-mod/

Cheers and Regards

Link to comment
Share on other sites

But, for me at least, it's far from clear whether it's possible to correctly unpack Intra-Package Deltas-Aware Packages from 9x/ME. And from the NT-family, it's one of those rare cases in which the native functionality is quite enough, so I really see no advantage in using the Universal Extractor for this purpose. I do find the Universal Extractor awesome and wonderful, and do use it for lots of things, constantly, but not for this.

Link to comment
Share on other sites

> Of course the kernel32.dll (both the gdr and the qfe versions) are there!

gdr? qfe? What are those? :unsure:

> With all due respect, haven't you ever heard about Intra-Package Deltas-Aware Packages? :blink:

Sorry, but no. I'm a Win9x-only guy! :yes:

> Do the following: under win 2k or higher....

:puke: Surely you jest! :lol: Will it run on SE with KernelEx?

Using 7-zip, I can extract what appears to be a series of patch files from the package. Last year I studied one of these install packages and concluded that it must be run on a system that already contained the original file. I don't give this type of package a second look anymore.

If the Kernel32.dll file isn't going to be available to ordinary 9x users, using it as part of a general solution isn't really an option. Perhaps jds can try it in his current endeavor.

Link to comment
Share on other sites

In a nutshell, gdr versions incorporate cumulatively all previous security patches including the latest mentioned in the respective KB document. Now, qfe versions include all that plus all the previous hotfixes (functionality patches, not security patches). Hardcore users prefer the qfe branch updates, but MS recommends the better tested gdr for general use (and that's what windows update site intalls by default, in principle, unless it already finds qfe files present). To make things still more complicated, of late MS decided to call qfe versions ldr, so that now there are three possible labels around, for the same version numbers, although files are issued either as qfe or ldr but never as both (which, I insist, at the end of the day, mean the same). :yes:

Link to comment
Share on other sites

In a nutshell, gdr versions incorporate cumulatively all previous security patches including the latest mentioned in the respective KB document. Now, qfe versions include all that plus all the previous hotfixes (functionality patches, not security patches). Hardcore users prefer the qfe branch updates, but MS recommends the better tested gdr for general use (and that's what windows update site intalls by default, in principle, unless it already finds qfe files present). To make things still more complicated, of late MS decided to call qfe versions ldr, so that now there are three possible labels around, for the same version numbers, although files are issued either as qfe or ldr but never as both (which, I insist, at the end of the day, mean the same). :yes:

Oh my! I'm glad I am a Win9x only user too. :lol:

Link to comment
Share on other sites

I've been playing with Delta packages back in 2011, it's not that big of a deal once you get the idea. And actually, the idea is very clever: take a certain file, patch it and out goes another file that may have no relation whatsoever with the former.

The required API can be found in PatchApi.h, part of Platform SDK. I had built an AHK wrapper for the API but it was never completed, however it did work at the time. I'll be reviewing the code and maybe I can come up with a small toy to automatically unpack and apply the patch under Win9x.

BTW, the package can easily be unpacked with 7-zip, which is what I'm using in the script.

Link to comment
Share on other sites

@Drugwash

On my Win7 x64 Ultimate system, I tried:

7-Zip (v9.20)

WinRAR (v4.20 64-bit)

FreeArc (v0.666)

WinZip Pro (v16.0 b9715 64-bit)

HaoZip (v2.6 b8450 x64)

PeaZip (v4.6)

PowerArchiver Pro 2011 (v12.12.02)

to extract the IPD that dencorso referenced:

Win XP SP3 kernel32.dll v. 5.1.2600.6293 (xpsp_sp3_qfe.121001-1624)

and, unless you know an extraction trick that I missed, none of them would extract it correctly. However, Universal Extractor (v1.6.1.62) and the Windows native method that decorso described both worked.

You should get the following file structure:


SP3GDR
...kernel32.dll
SP3QQFE
...kernel32.dll
update
...branches.inf
...eula.txt
...KB2758857.CAT
...spcustom.dll
...update.exe
...update.ver
...update_SP3GDR.inf
...update_SP3QFE.inf
...updatebr.inf
...updspapi.dll
spmsg.dll
spuninst.exe

Did I miss something?

Cheers and Regards

Link to comment
Share on other sites

@Drugwash

On my Win7 x64 Ultimate system, I tried:

7-Zip (v9.20)

WinRAR (v4.20 64-bit)

FreeArc (v0.666)

WinZip Pro (v16.0 b9715 64-bit)

HaoZip (v2.6 b8450 x64)

PeaZip (v4.6)

PowerArchiver Pro 2011 (v12.12.02)

to extract the IPD that dencorso referenced:

Win XP SP3 kernel32.dll v. 5.1.2600.6293 (xpsp_sp3_qfe.121001-1624)

and, unless you know an extraction trick that I missed, none of them would extract it correctly. However, Universal Extractor (v1.6.1.62) and the Windows native method that decorso described both worked.

You should get the following file structure:


SP3GDR
...kernel32.dll
SP3QQFE
...kernel32.dll
update
...branches.inf
...eula.txt
...KB2758857.CAT
...spcustom.dll
...update.exe
...update.ver
...update_SP3GDR.inf
...update_SP3QFE.inf
...updatebr.inf
...updspapi.dll
spmsg.dll
spuninst.exe

Did I miss something?

Cheers and Regards

Me too :thumbup
WindowsXP-KB2758857-x86-ENU\SPMSG.DLL
WindowsXP-KB2758857-x86-ENU\SPUNINST.EXE
WindowsXP-KB2758857-x86-ENU\SP3GDR\KERNEL32.DLL
WindowsXP-KB2758857-x86-ENU\SP3QFE\KERNEL32.DLL
WindowsXP-KB2758857-x86-ENU\update\BRANCHES.INF
WindowsXP-KB2758857-x86-ENU\update\EULA.TXT
WindowsXP-KB2758857-x86-ENU\update\KB2758857.CAT
WindowsXP-KB2758857-x86-ENU\update\SPCUSTOM.DLL
WindowsXP-KB2758857-x86-ENU\update\UPDATE.EXE
WindowsXP-KB2758857-x86-ENU\update\UPDATE.VER
WindowsXP-KB2758857-x86-ENU\update\UPDATE_SP3GDR.INF
WindowsXP-KB2758857-x86-ENU\update\UPDATE_SP3QFE.INF
WindowsXP-KB2758857-x86-ENU\update\UPDATEBR.INF
WindowsXP-KB2758857-x86-ENU\update\UPDSPAPI.DLL

Link to comment
Share on other sites

Any archiver will only unpack the Delta files. You get a bunch of _sfx_xxxx._p files (where xxxx can be 0000 to 9999), plus _sfx_manifest_._p and _sfx_.dll. Those are the source files that will further be processed to create the final files.

Win9x doesn't know how to natively apply the patches, therefore an external tool is needed, which is what I've been working on. Using it, one will end up with the correct folder structure, plus the original patch files.

There's a little more work to do before I can release the basic version. Stay tuned!

Link to comment
Share on other sites

Way to go, Drugwash! I'd love to be able to do it on 9x/ME! :thumbup

@all: most of the time, the goodies are in the SP3QQFE subdirectory, and the rest can be ignored. Sometimes, however, there are .INFs worth looking at elsewhere in the final directory structure.

Link to comment
Share on other sites

Way to go, Drugwash! I'd love to be able to do it on 9x/ME! :thumbup

@all: most of the time, the goodies are in the SP3QQFE subdirectory, and the rest can be ignored. Sometimes, however, there are .INFs worth looking at elsewhere in the final directory structure.

The skills that I have learned over the years is to use GDR versions. This is what Microsoft and MDGx uses, depending on the situation. This is what Unofficial Windows 98 Second Edition Service Pack 3.x consist of :w00t: This is why I trust Microsoft and MDGx most of the time, not cause they are always right (MOST OF THE TIME), but because they are(ACCURATE) :yes::w00t::D:) Edited by PROBLEMCHYLD
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...