it should be fairly easy to rewrite the installer to work the correct way
and Install the files in the correct order. This should also make it
feasable to write the Disk Prompt and have it in the right location as it
will traverse the Install media in the correct order. I'm going to work on
it this weekend some time, but I'll need help cleaning up my code to make it
wine worthy as this will be my first attempt at a patch. Here is some pseudo
code, explaining how I think it should work. Let me know if I'm wrong or you
have any suggestions.
In InstallFiles() it will need to execute step 1 and create the folders as
it currently does.
Then for step 2 do the following -
1. initialize the DiskId to 1.
Initialize the previous diskId-lastSequence to 0.
2. Query the total number or DiskIds from the media table.
3. Loop through DiskId until Total Disk Id is reached.
foreach ( DiskId )
{
select * from media where DiskId == DiskId
initialize LastSequence to that of LastSequence column in Media
Table
cabinet = cabinet column
print out, changing media to "Name of Cabinet" - Disk Prompt Here
for the current DiskId check to make sure the lastSequence is >
previous diskId sequence
if ( lastSequence < previousDiskIdSeq )
{
DiskId++
}
else
{
Here call a function to iterate current install Medium
IterateInstallMedia(LastSeq, cabinet);
--in this function select * from file table where Sequence
< lastSequence order by Sequence
then iterate through the file table for the current
install medium and
extract the files from the cabinet and copy files.
}
DiskId++;
}