Mixing XP PE with XP install?

Following the latest works to update the liveXP project with the changes introduced by Peter on NativeEx and PedroLe15 on api.script I’ve also took some time out to try something fun..

How about having an ISO which boots into a live CD environment and that we can still use to install windows on disk?

I know it’s possible modifying the NT loader and using other techniques - but how about mixing all files inside the same I386 folder?

So I’ve began testing - first results proven what appeared to be a sucessful marriage.

First created a regular liveXP with some bells&whistles like MMC and a few other apps. Then I’ve moved the target folder files and placed all files from my windows source.

Second - I’ve overwritten all files placed on the target folder with the ones that came from liveXP

Results: The liveXP environment is perfectly bootable without changes.

——————-

For this “marriage” have a meaning - the second step was missing - Install windows on disk from a PE environment

Start up with the regular method calling setup.exe found on the root of CD - the application seemed to work flawlessly asking for the serial key just like a regular install.

In the meanwhile I had already partitioned the disk and formated it with NTFS and marked the partition as active (I know this can be improved but this was just in testing phase)

However - setup didn’t work as expect as very few files were copied over to hardisk and the system complained about a few missing files when booting from disk - install is no go.

——-

Suspecting that the lack of files came from the customized txtsetup.sif created by nativeEx - I’ve decided to merge the contents of the target windows onto the source windows txtsetup.sif - creating this way a much bigger txtsetup.sif file which hopefully contained all data needed to install windows on disk.

Combining INI file values wasn’t an easy task to acomplish by hand so I’ve created a small app to combine these values - you can find it here

——-

Recreated a new ISO and tried it out - failed to boot again complaining about missing drivers.. :(

——-

Looking with more detail into txtsetup.sif I’ve decided to start off from a fresh txtsetup.sif from the source folder and remove the sections which contained the .load extension and replace these sections with the ones provided on nativeEx.

First - these two txtsetup.sif were added on a new text file. On top was txtsetup.sif from liveXP and bottom filled with the txtsetup.sif from Source CD.

On the source CD portion these sections were removed:

[Version]
[Setupdata]
[BootBusExtenders.Load]
[BusExtenders.Load]
[InputDevicesSupport.Load]
[SCSI.Load]

On the liveXP portion these section were removed:

[WinntDirectories]
[SourceDisksNames.x86]
[SourceDisksFiles]

All editing was made with notepad++ - which let us to interpret a file as having .ini language and allow colapsing sections to ease navigation (really great for handling large sized ini files)

——————————

As a result: this modded txtsetup.sif contained the boot information to start LiveXP and the install data to proceed with the correct installation of XP on disk.

New test installing windows - setup seemed to take much longer copying the needed files (now it really seemed to be installing something)

But when rebooting from disk - the same results - missing xxxx file from minint

————-

MiniNT is something related to the PE environment available from regular XP WinPE when running on a file system different from CDFS.

Would this mean that the txtsetup.sif on disk is trying to start liveXP instead of going to the installation procedure?

—————

Oh well.. Time for another field investigation - this time repeating the same procedure, installing the OS on the machine and then overwriting the txtsetup.sif on disk with the one that originally came from the install CD and see where this can take us next.

Any suggestions to solve this challenge?

- Nuno Brito

3 Responses to “Mixing XP PE with XP install?”

  1. Alexei Says:

    Hi Nuno,
    I believe, there is another way to reach your goal :)
    You probably know, that MSN CDs used to have several versions of Win on the same CD. It was possible because of some trick, with allowed to refer same file from different installations. I also remember they have a utility that performed this trick while making ISO. I should have it somewhere. It may be even their “standard” utility. If you run it in help mode it should tell you. That’s all I remember about it :( Are you interested?

  2. Nuno Brito Says:

    Hi Alexei!

    Yes, I’m very interested - So far I’ve only used the regular retail versions of windows - this is very intriguing and few steps seem left to complete this task and it would be great to know more about how it gets done.

    Thank you!

  3. thuun Says:

    We already use such utilities which take advantage of the iso file system to link files. Mkisofs and cdimage both do this and are used in my projects for wb.
    Nuno,
    to dump the pe i386 dir. on top of the setup is interesting thinking, but I’m guessing it won’t work. I’ve made some multiboot DVDs that use the flyakite method for xp/2k/2k3 setup and also contain one or two pe builds. CDimage consolidates any duplicates. A maximum number of files in the pe build should be cabbed for placing on the same disc as a xp/2k/2k3 setup, this way more duplicates are found by the imaging utility and linked equaling a big space savings as most of the setup files are cabbed. I know Peter has a script for cabbing drivers, but many pe files targeted for system32 can also be cabbed, as you may well know. Here’s another though..
    Uncab some setup files so more dups are found. If the setup is nlited and under 200 MB., the setup and/or pe may be added to a compressed ramdisk image for running setup inram. :)

Leave a Reply