problems when integrating hotfixes XP home
#1
Posted 04 July 2007 - 12:56 PM
does anybody have a list of working KB patches for the XP home version? i downloaded them all from the sticky but they seem to mess up my CD.
#2
Posted 04 July 2007 - 01:28 PM
#4
#5
Posted 26 August 2011 - 12:23 PM
Update for Microsoft XML Core Services 4.0 Service Pack 2 (KB973688) ?
#6
Posted 26 August 2011 - 02:15 PM
You need this for the 2nd link I posted.And Nlite to slipstream whatever (The service pack / drivers etc)
This post has been edited by PaulAuckNZ: 26 August 2011 - 02:18 PM
#7
Posted 26 August 2011 - 02:22 PM
First and foremost, KB973685 supersedes KB973688.
Assuming you're using XPx86SP3 Home and using no tools like nLite or HFSLIP, the simplest method is to add the installers to SvcPack.inf by following these steps:
- Rename your files to fit the 8.3 naming convention:
- "windows-kb890830-v3.22.exe" becomes "KB890830.exe".
- "msxml4-KB973685-enu.exe" becomes "KB973685.exe".
- "windows-kb890830-v3.22.exe" becomes "KB890830.exe".
- Correctly place your KB*.exe files:
- Create a folder named SVCPACK inside I386 of your source.
- Copy your KB files to the I386\SVCPACK folder.
- Create a folder named SVCPACK inside I386 of your source.
- Decompress existing SvcPack.inf file:
- Locate the file "SvcPack.in_" in I386 in your source.
- Using 7-Zip, WinRAR or another compressed file manager extract SvcPack.inf from SvcPack.in_ and place the INF file in I386.
- Delete "SvcPack.in_" in I386.
- Locate the file "SvcPack.in_" in I386 in your source.
- Edit I386\SvcPack.inf:
- Open SvcPack.inf in NotePad or your favorite text editor.
- Add the following lines to the bottom of the [Version] section:
- MajorVersion=5
MinorVersion=1
BuildNumber=2600
- Open SvcPack.inf in NotePad or your favorite text editor.
- Under [SetupData] change:
- CatalogSubDir="i386\hotfixes"
- CatalogSubDir="\i386\svcpack"
- KB890830.exe /Q
KB973685.exe /qn
If your source was unmodified at the start, your SvcPack.inf file should now look like this:
[Version] Signature="$Windows NT$" MajorVersion=5 MinorVersion=1 BuildNumber=2600 [SetupData] CatalogSubDir="\i386\svcpack" [ProductCatalogsToInstall] [SetupHotfixesToRun] KB890830.exe /Q KB973685.exe /qn
It should be mentioned that these instructions are available in a more generalized form in MSFN's Unattended Windows guide.
This post has been edited by 5eraph: 26 August 2011 - 02:38 PM
#8
Posted 26 August 2011 - 10:08 PM
5eraph, on 26 August 2011 - 02:22 PM, said:
You hit the nail on the head ...
Quote
I figured the KB973688 was superseded by another because of -x- update list and xable's,neither have it on their 'high priority' update list... I am more concerned with why /integrate didn't work for KB973688 as well as MRT.
(just for the knowledge) Also, how does one find out which updates supersede others ? Where exactly do I find that info out without relying on someone else's research ?
Quote
Well, I slipstreamed SP3 so I'm using XPx86SP2 Home with SP3 slipstreamed, and I do prefer the manual method ...
Quote
- Rename your files to fit the 8.3 naming convention:
- "windows-kb890830-v3.22.exe" becomes "KB890830.exe".
- "msxml4-KB973685-enu.exe" becomes "KB973685.exe".
- "windows-kb890830-v3.22.exe" becomes "KB890830.exe".
- Correctly place your KB*.exe files:
- Create a folder named SVCPACK inside I386 of your source.
I'll stop you here just to make sure .... There is already a folder named 'svcpack' in the I386. Do you mean to use this one ?
Quote
- Locate the file "SvcPack.in_" in I386 in your source.
- Using 7-Zip, WinRAR or another compressed file manager extract SvcPack.inf from SvcPack.in_ and place the INF file in I386.
- Delete "SvcPack.in_" in I386.
- Open SvcPack.inf in NotePad or your favorite text editor.
- Add the following lines to the bottom of the [Version] section:
- MajorVersion=5
MinorVersion=1
BuildNumber=2600
- CatalogSubDir="i386\hotfixes"
- CatalogSubDir="\i386\svcpack"
- KB890830.exe /Q
KB973685.exe /qn
If your source was unmodified at the start, your SvcPack.inf file should now look like this:
[Version] Signature="$Windows NT$" MajorVersion=5 MinorVersion=1 BuildNumber=2600 [SetupData] CatalogSubDir="\i386\svcpack" [ProductCatalogsToInstall] [SetupHotfixesToRun] KB890830.exe /Q KB973685.exe /qn
It should be mentioned that these instructions are available in a more generalized form in MSFN's Unattended Windows guide.
An excellent guide (MSFN's Unattended Windows) and I do have it bookmarked.
Thank you for taking the time and writing this out in more detail. An excellent post !
#9
Posted 26 August 2011 - 11:15 PM
aliceinchains, on 26 August 2011 - 10:08 PM, said:
It is considered an XPx86SP3 source once SP3 is slipstreamed. So far, so good.
aliceinchains, on 26 August 2011 - 10:08 PM, said:
Yes. Was it empty when you started? I ask because it is best to slipstream a service pack into an unaltered source to avoid problems during installation.
aliceinchains, on 26 August 2011 - 10:08 PM, said:
/integrate and /s don't work with KB890830 and KB973688 because they are not built like common update packages. They're basically just extractors that execute another program within: MRT.exe inside KB890830 and MSXML.msi inside KB973688 (KB973685 has the same MSI file name with newer contents).
To determine which update supersedes another the most dependable method is to extract the files within the packages and compare file versions. Most packages for XP can be extracted using the /x switch. Common packages almost always have two folders that are named for their installation branches, such as SP3GDR and SP3QFE. Within these are the files to be updated. To determine a file's version right-click the file to be examined, click Properties, then click the Version tab.
MSI-based packages are more complicated to extract. First you extract from the EXE using the /x switch. To reliably extract the files within the MSI follow the following steps:
- Create a folder for the administrative install point (fancy name for extraction folder
). It is preferable to create this folder near the root of the drive to prevent a lot of typing in the next step. Try a folder name like "C:\MSI_Extract".
- Open a command prompt in the folder with the MSI and type the following using KB973688 as an example:
MSIExec.exe /A msxml.msi TARGETDIR="C:\MSI_Extract"
Note that a fully qualified path must be used for TARGETDIR, including drive letter!
- Examine the files in the new "C:\MSI_Extract\System" folder.
There's more involved with packages that install Side-By-Side binaries such as this. As a beginning example, this is pretty hairy as you need to examine policy files to determine which binaries will be used as default. I'll explain further if you'd like.
aliceinchains, on 26 August 2011 - 10:08 PM, said:
Thanks for the compliment.
#10
Posted 29 August 2011 - 12:11 AM
5eraph, on 26 August 2011 - 11:15 PM, said:
I was wrong, I didn't have the folder until after I started installing updates. No worries,I understand why you said "create" now. lol
Quote
What exactly am I looking for, I mean to be able to tell one supersedes the other ?
Quote
After they are extracted, in this case, I would be checking the file version of both SP3GDR and SP3QFE,yes ?
Quote
- Create a folder for the administrative install point (fancy name for extraction folder
). It is preferable to create this folder near the root of the drive to prevent a lot of typing in the next step. Try a folder name like "C:\MSI_Extract".
- Open a command prompt in the folder with the MSI and type the following using KB973688 as an example:
MSIExec.exe /A msxml.msi TARGETDIR="C:\MSI_Extract"
Note that a fully qualified path must be used for TARGETDIR, including drive letter!
- Examine the files in the new "C:\MSI_Extract\System" folder.
There's more involved with packages that install Side-By-Side binaries such as this. As a beginning example, this is pretty hairy as you need to examine policy files to determine which binaries will be used as default. I'll explain further if you'd like.
OK, I extracted the msi contents out of both 'KB973688' and 'KB973685' and looked in the system folders of both. 'kb973688' had three dlls,file versions "4.10.9404.0" "4.10.9404.0" and "4.20.9876.0."
'KB973685' had two dlls, file versions "4.30.2100.0" and 4.30.2107.0."
It should be noted that when I extracted them, in both cases I got the message "this type of update is not supported - hit ok " This was new to me so I am glad you taught me how to do this.
#11
Posted 29 August 2011 - 04:58 AM
aliceinchains, on 29 August 2011 - 12:11 AM, said:
After [the standard updates] are extracted, in this case, I would be checking the file version of both SP3GDR and SP3QFE,yes ?
No. For a given update package, the files in the SP3GDR folder will be the same version as those in the SP3QFE folder. We need only check the file versions of one of these folders against those from a folder of another update package.
Let's compare two standard updates, like KB2503658 and KB2544893, as an example. First we extract both using the /x switch. Then we choose a branch to compare; usually the QFE branch is best since it should always exist in a standard update. In this example, with only one file, it should be easy to see which supersedes the other. It becomes more complicated when two updates supersede one other, or vice versa as is the case between KB2507938 and KB2121546 + KB2476687.
aliceinchains, on 29 August 2011 - 12:11 AM, said:
'KB973685' had two dlls, file versions "4.30.2100.0" and 4.30.2107.0."
It should be noted that when I extracted them, in both cases I got the message "this type of update is not supported - hit ok " This was new to me so I am glad you taught me how to do this.
The newer update does not seem to need the extra resource file, which should explain the difference in file quantity. But you can see how the file versions differ between packages.
There is much you can do with administrative install points in MSI packages as they can be updated or otherwise modified, then repacked to install as the original package would. With these simple XML updates repacking would be pointless, so the error message is understandable. You can skip the error message in the future by adding /qn to the end of the command line like so:
MSIExec.exe /A msxml.msi TARGETDIR="C:\MSI_Extract" /qn
#12
Posted 29 August 2011 - 10:11 AM
5eraph, on 29 August 2011 - 04:58 AM, said:
Yeah, that's what I meant .. OK
5eraph, on 29 August 2011 - 04:58 AM, said:
What I see is KB2503658's file version is "6.0.2900.6090" and KB2544893's file version is 6.0.2900.6109 .. So obviously, the higher number supersedes (?)
5eraph, on 29 August 2011 - 04:58 AM, said:
...and in this case 'KB2507938' supersedes because it has both the dlls that the others have collectively,plus the file version numbers are higher,correct ?
This post has been edited by aliceinchains: 29 August 2011 - 10:18 AM
#13
Posted 29 August 2011 - 11:13 AM
#14
Posted 29 August 2011 - 01:29 PM
5eraph, on 26 August 2011 - 02:22 PM, said:
- MajorVersion=5
MinorVersion=1
BuildNumber=2600
- CatalogSubDir="i386\hotfixes"
- CatalogSubDir="\i386\svcpack"
- KB890830.exe /Q
KB973685.exe /qn
If your source was unmodified at the start, your SvcPack.inf file should now look like this:
[Version] Signature="$Windows NT$" MajorVersion=5 MinorVersion=1 BuildNumber=2600 [SetupData] CatalogSubDir="\i386\svcpack" [ProductCatalogsToInstall] [SetupHotfixesToRun] KB890830.exe /Q KB973685.exe /qn
It should be mentioned that these instructions are available in a more generalized form in MSFN's Unattended Windows guide.
I just have a couple question about this:
Can I do this "inf method" after I have already "/integrated" a bunch of updates, only doing this for the updates that don't use the /integrate switch ?
Can I do the inf way and then use the integrate switch after ? Or is it all one or the other ? E.G. I have a fresh copy of XPHOMESP3 (source) and I "/integrate" a bunch of updates until I come to those that won't and THEN I add those to the inf, such as explained here.
Also, in this MSFN's Unattended Windows guide, do I need to do the "DOSNET.inf" part of it ? ...Also the "adding" QCHAIN.exe part of it ?
Plus, You said add these like this:
KB890830.exe /Q
KB973685.exe /qn
My question is how do I know what /Q or /qn to add with the rest of the updates ?
The guide says : KB824146.exe /Q /O /N /Z but I'm not familiar with this stuff. I read some about what they mean but I don't really know how to apply them and why.
#15
Posted 29 August 2011 - 02:56 PM
tomasz86, on 29 August 2011 - 11:13 AM, said:
That is true, but not too common with XP packages. In XP packages the file sections to check are [Product.Del.Reg] and [Product.Add.Reg] in file "update_SP3QFE.inf". And all lines containing "%SP_SHORT_TITLE%" or "LogLevel" can be ignored.
aliceinchains, on 29 August 2011 - 10:11 AM, said:
...and in [the second] case 'KB2507938' supersedes because it has both the dlls that the others have collectively,plus the file version numbers are higher,correct ?
Correct on both counts.
aliceinchains, on 29 August 2011 - 01:29 PM, said:
Can I do the inf way and then use the integrate switch after ? Or is it all one or the other ? E.G. I have a fresh copy of XPHOMESP3 (source) and I "/integrate" a bunch of updates until I come to those that won't and THEN I add those to the inf, such as explained here.
Yes, you can /integrate in addition to adding packages manually. Just be sure you continue using the same SvcPack.inf throughout so all your packages are listed under [SetupHotfixesToRun], not just the ones you added manually.
The order in which you add packages (either /integrate or manually) shouldn't matter. But it is good practice to keep the packages in numerical order since it's close to the order in which the packages were likely released by Microsoft. So you can /integrate all supported packages first then add the rest manually if you wish; putting the unsupported packages in proper order with the rest.
aliceinchains, on 29 August 2011 - 01:29 PM, said:
I would recommend the "DOSNET.inf" part. I am not certain if /integrate does this automatically. You can open DOSNET.inf after you /integrate some packages and CTRL+F to see if the required entries exist. Add them if they do not.
QChain.exe has not been necessary since SP2. You do not need it. The update packages themselves now include this functionality.
aliceinchains, on 29 August 2011 - 01:29 PM, said:
You don't need to add these switches to packages that are added by /integrate. It is done automatically.
aliceinchains, on 29 August 2011 - 01:29 PM, said:
You need to examine the unsupported packages to see what switches are needed to install silently. This can usually be done at a command prompt by using the /? switch. For MSI-based packages, /qn usually works.
#16
Posted 30 August 2011 - 09:32 AM
One more question here and I'm ready to go.
1. X86-all-windows-kb890830-v3.22_29abc5ef808a7e17fe9d10559cc690fb264fbba3.exe
2.X86-all-windows-kb890830-v3.22-delta_2c5fe05278e080b6143d184b782e561ce8ad0d71.exe
and they will both be named "KB890830.exe" so that won't allow me to drop those files in the same folder. Do I rename one with an extra letter or do I only add one of the two files and if so,which one ?
#17
Posted 04 September 2011 - 09:48 AM
1. X86-all-windows-kb890830-v3.22_29abc5ef808a7e17fe9d10559cc690fb264fbba3.exe
2.X86-all-windows-kb890830-v3.22-delta_2c5fe05278e080b6143d184b782e561ce8ad0d71.exe
and they will both be named "KB890830.exe" so that won't allow me to drop those files in the same folder. Do I rename one with an extra letter or do I only add one of the two files and if so,which one ?
#18
Posted 04 September 2011 - 02:46 PM
Where did you get your files for KB890830? You only need the one from the Microsoft Download Center. Then, it's just the one file. Don't extract it.
#19
Posted 04 September 2011 - 06:01 PM
#20
Posted 07 September 2011 - 08:06 PM
- ← office 2007 slipstream problem
- Unattended Windows 2000/XP/2003
- Slipstreaming DriverPacks onto XP installation DVD →



Help

Back to top









