Help - Search - Members - Calendar
Full Version: Custom Win98SE setup scripts (infs)
MSFN Forums > Microsoft Software Products - Discussion & Support > Windows 95/98/98SE/ME > Windows 9x Member Projects

   
Google Internet Forums Unattended CD/DVD Guide
PeteK27
Hi all,

Over the past few years I have been slowly customizing the setup files (inf's) that come with Win98SE to modify how it is installed on my system. I realized that some of my work might be useful to others so I decided to pull it together into a single package and make it available to those who might be interested.

For background on what I have done and how these custom scripts work I have a readme text file here:

http://64.213.216.19/pcss/readme.txt

If you decide you want to experiment with these scripts, you can download them here:

http://64.213.216.19/pcss/pcss.exe

Warning: This is a big (13Meg) file and a slow unreliable link.

All the best,

Pete
wizy
I think this is great. It would be nice to be able to use this type of a system to merge in the things we normally install like the service pack, options pack, ect....
tentonine
PeteK27;

Great job! I can see alot of work went into this project.

Tested the scripts with cabs from a Product Type 1 disk and a Product Type 9.
Product Type 1 went like clockwork. Produced about an 60Mb Windows.

Product Type 9 had an error related to license.txt right after first boot.

Extracted license.txt into windows\help dir. and pidgen.dll, pidset.exe into windows dir., restarted.
Product Key screen flashed briefly and OS shut down.
Merged into the registry 5 keys(ProductId, ProductKey, RegisteredOrg., RegisteredOwner and DigitalProductId)
setup restarted and completed successfully.
PeteK27
tentonine,

I was aware (or at least suspected) that there were slightly different versions of the Win98SE setup disks. Unfortunately I only have access to one so I was not able to test my package against some of the other versions. However I think I might know where the problem is.

Before you begin to run setup, try replacing setupc.inf with this file:

http://64.213.216.19/pcss/setupc.inf

Hopefully this will correct the problem.

BTW, do you know how many variations there are of the Win98SE setup disks and what the differences might be?

wizy,

Regarding integrating in the service pack, option pack, etc, I agree that this would be the logical next step. I have looked over the service pack a little but haven’t really worked much with it.

Ideally it would be nice to be able to slipstream the service pack in prior to running setup. However I suspect that if you did this right now it would probably fail because my package uses the Win95 shell rather than the Win98 shell. Therefore the service pack will (at minimum) probably have to be modified to remove any Win98 shell components or my package modified to add back in the Win98 shell.

However right now I plan to use my rather limited amount of time to concentrate on shaking out any bugs and adding critical features that are needed to make this a functional package. But if you decided to test my package with the SP, OP, etc I would be interested in knowing what problems you ran into. Even if I can't address them right now, your comments may help out in the future.

Pete
tentonine
PeteK27;

Tried the new setupc.inf, didn't help.
I made these edits to setuppp.inf and was able to get setup to run and complete as normal.
CODE
[data]
sys_registry    = system.dat
user_registry    = user.dat
minboot  = 1500000
minboothost    = 1500000
DiskPad  = 10:42000000   ; Can list multiple LDIDs and values.
AveSystemDat    = 2000000
AveUserDat    = 200000
ProductType    = 9
;UPI  = 24264-XXX-XXXXXXX

CODE
[DestinationDirs]
setup.files.inf    = 17
win.copy        = 10
help.copy       = 18

[BaseWinOptions]
infs

[infs]
CopyFiles       = setup.files.inf, win.copy, help.copy

[win.copy]
pidgen.dll

[help.copy]
license.txt

[setup.files.inf]
;>  device driver setup
setup.inf,setuppp.inf


I'm only familiar with Product Type 1 and 9 but this site http://www.easydesksoftware.com/setuppp.htm says there are types 1, 2, 5, 6, 7, and 9.
PeteK27
tentonine,

Nice work! It looks like you have hacked some of these setup files before.

I going to remove my previously modified setupc.inf and instead post a version of setuppp.inf that includes your changes. If you can, please look it over and make sure I didn’t miss anything.

http://64.213.216.19/pcss/setuppp.inf

Just out of curiosity, did you try to use your modified setuppp.inf with your type 1 disk? What I am wondering is whether there needs to be different setuppp.inf’s for each type of setup disk or if it is possible to come up with one version that will work with all types.

Looking at the web site you pointed me at, I’m guessing that the Type 1 disks are the “retail” version of Win98SE and the Type 9 disks are the OEM version (shipped with a new computer). Based on the disks that you have, does this sound correct?

Also, is anyone else running something other than a ProductType 1 or 9? I think you should be able to check this by opening the file setup.inf in c:\windows\inf and looking for the keyword “ProductType” under the [data] section.

On a more general note, once you got things up and running did you have any major problems? I am particularly interested in whether you were able to use dialup networking successfully. I don’t have a modem so I was never able to check this.
wizy
I have a computer that is only used for testing things out in virtual machines. Ill play around with my copy of 98se install and the various service packs and option packs they have here to see what happens tonight.
tentonine
QUOTE (PeteK27 @ Aug 24 2005, 01:10 AM)
tentonine,

Nice work!  It looks like you have hacked some of these setup files before.


I've have also been working on something like this for several months, but I'm doing a complete removal of all IE core files.

After further testing with a new setup directory it looks like the section in setuppp.inf
[help.copy]
license.txt

Should be changed to;
[help.copy]
license.txt,lic_help.txt

I've also been able to test against an Type 2 product (upgrade cd).

The modified setuppp.inf seems to work with Type 1, 2 and 9, but I'll be doing more extensive testing this weekend.

As to the question of dial-up networking, It will be a few days before I can test it.
tentonine
PeteK27;

Tried to do some testing of Dial-up, but ran into a few problems.

I was using an old P200MMX machine with some isapnp cards(sound, modem) neither card detected.
I noticed your modified machine.inf has isapnp support removed so I copied the original over it.
After the install I found it also needed machine2.inf to fully complete the setup.
Both cards were then detected, but the legacy part of the sound card was still not detected.

Some software that I've successfuly used after install:
Portable Firebird
Portable Thunderbird
Burn At Once (After Installing ForceASPI17)
Office97 Standard
7-zip
foobar2000
easyclean
Norton Disk Doctor
Norton Speedisk
Wackget
Kerio PF 2.1.5
Liteshell
nil
Awesome example of Win9x setup scripting PeteK27! Thanks to your liberal use of comments it's almost a tutorial - very much appreciated.
PeteK27
Hi tentonine,

Sorry for the delay in responding to your previous posts.

>Tried to do some testing of Dial-up, but ran into a few problems.

You are correct in noticing that I removed much of the support for ISA cards. While they should still work if you manually install the drivers, I took out most of the PnP stuff .

If I remember correctly there are two parts to putting it back in. The first, which you found, is the isapnp enumerator (driver). This is normally in MACHINE2.INF. If your ISA card is PnP enabled the isapnp enumerator should make sure Windows detects it and kicks off the normal PnP driver install routine.

Most ISA cards were not PnP enabled (they often predated Win95) and need to be detected manually. The file MSDET.INF directs how this was done. However since the process of scanning for usually nonexistent hardware can add several minutes to the installation time and increases the risk of a system crash, I removed most of the instructions. If you revert back to the original version of MSDET.INF I suspect your sound card might be detected properly.

I’m a bit torn on how much of this support I want to add back in. As I am sure you remember, ISA cards were usually a royal pain to get installed properly with all the IRQ conflicts, etc. Are ISA cards still that common? Do you think this support needs to be added back in?

BTW, you've probably already found it but I also posted a zip file containing original copies of the Win98SE inf’s sorted into various directories. I’ve found it makes troubleshooting a little easier. You will find it here:

http://64.213.216.19/pcss/Win98SE%20master%20infs.zip

>The modified setuppp.inf seems to work with Type 1, 2 and 9, but I'll be doing more extensive testing this weekend.

This is good news. I was hoping I wouldn’t have to maintain several versions of setuppp.inf. I’ll add it into the main package in the near future. I would do it now but I would like to wait and see if I get anymore feedback. I prefer posting any changes all at once.
tentonine
PeteK27,

>Sorry for the delay in responding to your previous posts.

Not a problem, Real life has been forcing itself on me since tuesday.
Major car problems (2003 Saturn VUE), and oldest son talking to recruiter's haven't left me with much time.
Also after working with your inf's I got a few ideas and did some work on my own project.

>While they should still work if you manually install the drivers, I took out most of the PnP stuff.

Yes, I was able to install the modem, but I always had to install an additional com port to attach the modem to and it stays visible in device manager under the ports section. I think this is just cosmetic, but doesn't look as clean.

>Do you think this support needs to be added back in?

I think it depends on what kind of response you get to the project, and if anybody else post that they need it.
For my own use my modem is always in a linux box that I use to share out the connection, I just pulled it out and put it another box to test Dial-up. So for me it doesn't matter.
Skrib
PeteK27 / tentonine,

I came across this thread while looking for an alternative to nLite that catered to users of win9x, currently nLite only supports Windows 2000, Windows XP and Windows Server 2003.

After reading your posts there's probably enough information here ( I haven't downloaded the packages or inf files or anything yet, waiting for my 98b disc to turn up first hehe ) to accomplish my goals but I'm very interested in this idea.

Do either of you have any information since these posts concerning your own respective projects? I'm really interested in this topic and would like to learn what you guys' projects are / were and their purpose as I too of course have an ongoing project of similar nature and am simply curious as to the function of what you've built.
tentonine
Skrib

The goal is just a slimmed down install of win98 without IE or the IE core files. This is similar to the commercial product
98Lite, but free. It's accomplished by editing the setup info files to remove what is unwanted from the install.
A good starting point would be to download the files listed in the first post. PeteK27 has commented the changes in the
info files and it helps to better understand the changes.
Also take a look at this thread http://www.911cd.net/forums//index.php?sho...st=0&#entry8591
on how to make some changes to setupx.dll.
Skrib
tentonine:

Thanks for your reply. From what I've read 98Lite is used *after* the Windows 98 installation, correct? Does the method here apply the changes to the installation files *before* install or does it slim down an already installed Windows?

My goal is nearly the same as nLite - There are many things installed with Windows that are unnecessary for my needs and instead of removing them after the install I wish to exterminate their presence on the installation CD and from the ini/inf files that link to them so that I can then inject software installations into the CD and finally script everything (Windows and all my Apps) to use silent installs / unattended installs so as to have a one-stop recovery in the case of a complete disaster.

Not sure at this point what all I want removes as I forget what all is included, but anything I don't use or isn't a shared file by the things that I do use I would like to remove, as well as every driver that comes on the disc and replace them with only the drivers for my hardware.

Thanks again for your reply.
tentonine
Skrib;

98lite is used prior to the installation his other product ieremove is used after. Both 98lite and the package at the top
use modified setup info files to produce a slimmed down 98. These files are placed in the 98 install folder along with the
installation cabs. Neither of these methods remove anything from the installation, when you place a modified resource
in the install directory it gets used instead of the original.

Modifying or removeing resources in the cab files is much more complex, if you look at one of the windows cabs with
a hex editor you'll find in the header a reference to the previous cab and the next cab. If you repack certain cabs it will
cause setup to fail because of the lack of this reference. If you use makecab from the cab sdk correctly you can produce
cabs that have this in the header but I have not done this myself. Maybe someone else on the board has done this already
and could explain the correct method.
CLASYS
QUOTE (Skrib @ May 28 2006, 04:06 AM) *
From what I've read 98Lite is used *after* the Windows 98 installation, correct? Does the method here apply the changes to the installation files *before* install or does it slim down an already installed Windows?
Actually, no, you can do it before, which is often preferable.

As I have documented before, using 98lite or IEradicator to remove IE 5.0 in 98SE requires a counter-intuitive installation of IE 6.0 or 6.0 SP1 if you intend to update Outlook Express with any of the rollup-class OE updates to IE/OE.

Even if you install 98lite after, you still would have to not yet upgrade past IE 5.0, then let 98lite add/remove it and you should remove it, if the goal is IE 6.0/6.0 SP1.

Also, any shell-swap is now useless. Pick any you want, but be prepared to stay with the choice; the mere attempt to shell-swap [even to the currently used shell!] destroys the whole IE/IE 6/6 sp1 installation; you have to remove and start again [as I documented elsewhere] but it will work [after all that effort].

Can anyone help me with a small detail:

There is a bug when installing 98lite before: You lose the personal web server, no option, no nothing.

Is there a specific program to run that puts personal web server back? If this cannot be accomplished and you need PWS, this is a deal-breaker for using 98lite before/during and you must use after.

98lite initially doesn't address web folders, but after it's installed, that option appears [unchecked at first; you can enable it].

In 98lite, there is a checkbox for removing IE 5.0. This is technically correct, or at least initially. Problem is that IE 5.0 being seemingly present is a prerequisite for adding on Windows Update, which has also become an add/remove object. The fix, documented somewhere on litepc.net is to perform a registry patch that makes it appear that IE 5.0 is installed. [This is a registry setting meaningful only to 98lite.] You need to perform this if after IE 5.0 is removed/was opted out on a before-type install, you actually did put back IE, presumably a newer version. Checking the box will actually attempt to install IE 5.0 back, likely corrupting things if you have already installed a newer version! Thus, use the registry patch to set the checkbox, not the actual operation of checking it, etc.

cjl
MDGx
CLASYS:

PWS can be reinstalled in Win98 SE by running:
Control Panel -> Add/Remove Programs -> Windows Setup -> Internet Tools -> Details button -> check Personal Web Server box -> click Apply/OK -> must have Win98 SE CABs available from CD or HD.
If u have any files newer than the ones from the CABs, you can answer "Yes" to keep newer files if prompted to do so.

HTH
jemonly
How is this different from winimize.com?
nicke85
Great job Petek27!!! biggrin.gif
Thanx for many usefull informations about infs.
PROBLEMCHYLD
QUOTE (MDGx @ May 30 2006, 12:58 AM) *
CLASYS:

PWS can be reinstalled in Win98 SE by running:
Control Panel -> Add/Remove Programs -> Windows Setup -> Internet Tools -> Details button -> check Personal Web Server box -> click Apply/OK -> must have Win98 SE CABs available from CD or HD.
If u have any files newer than the ones from the CABs, you can answer "Yes" to keep newer files if prompted to do so.

HTH

1 better

http://www.msfn.org/board/index.php?s=&...st&p=551960
erpdude8
QUOTE (PROBLEMCHYLD @ Aug 24 2006, 07:30 PM) *
QUOTE (MDGx @ May 30 2006, 12:58 AM) *

CLASYS:

PWS can be reinstalled in Win98 SE by running:
Control Panel -> Add/Remove Programs -> Windows Setup -> Internet Tools -> Details button -> check Personal Web Server box -> click Apply/OK -> must have Win98 SE CABs available from CD or HD.
If u have any files newer than the ones from the CABs, you can answer "Yes" to keep newer files if prompted to do so.

HTH

1 better

http://www.msfn.org/board/index.php?s=&...st&p=551960


you can also install PWS from the \Add-ons\PWS\ folder of the Win98 FE/SE CD.
Google Internet Forums Unattended CD/DVD Guide
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.