Jump to content

[Closed] Configure winnt.sif to perform several tasks


Recommended Posts


Short answer... no.

you're gonna need two complete windows setups on the disc e.g. PRO1 and PRO2.

If you need to reduce the size of the DVD use CDImage.

The best thing I can do is point you to the guide. It has all the information you'll need to do this! You could also check out the forum here if you need more help.

Edit: I've just noticed the guide page is down I'll try to remember to add the PDF version to this post for ya. At the mo MSFN seem to think I've exceeded my limit for attachments. Don't think so since I don't have any on any other posts :huh:

Edited by kof94
Link to comment
Share on other sites

Thanks kof96. I've read Flyakite's tutorial but none of that information was there.

I realized that one solution for my problem was having two WINNT.SIF files. One running a RunOnce.CMD file that installed the needed software and other that doesn't. The thing is that i need RunOnce.CMD to be copied over to the %SystemRoot%.

Anyway can someone tell me an option on how to copy a file from i386 to %SystemRoot% without using the $OEM$ folders?

Or can someone tell me how to install software in the T-13 (or 12) minute part of the installation?

EDIT: I changed the 1st post to meet my new need :)

André Casal

Edited by andregcasal
Link to comment
Share on other sites

Anyway can someone tell me an option on how to copy a file from i386 to %SystemRoot% without using the $OEM$ folders?

Or can someone tell me how to install software in the T-13 (or 12) minute part of the installation?

If i understand correctly, you want one install to copy this file, and another that don't (and you use two boot folders for that).

But, in fact, you can *always* copy your RunOnce.cmd : one WINNT.SIF will lauch it, the other will ignore it.

To do that :

1) optional step : MAKECAB RunOnce.cmd

2) copy RunOnce.cmd or RunOnce.cm_ in i386

3) add this line in the [files] section of DosNet.inf (always ".cmd" here, no ".cm_") :

d1,RunOnce.cmd

4) add this line in the [sourceDisksFiles] section of TxtSetup.sif (always ".cmd" here, no ".cm_") :

RunOnce.cmd = 1,,,,,,,1,0,0

That's all : your file will be copied to C:\WINDOWS (or %Windir%)

(it's not possible afaik to copy it to the root)

The drawback is that it will not be deleted in both cases : you should use a second CMD ("RunOnceBoth.CMD") that take care of the cleanup, and run it in both install modes.

Of course, RunOnceBoth.cmd must not delete RunOnce.cmd before it ran ;)

:huh: it seems complicated... there must be an easier way !

++

Link to comment
Share on other sites

Hi Delprat!

In fact i find it pretty simple! Thank's very much!

I didn't know that i could copy files using DosNet.inf and TxtSetup.sif. That will be very helpfull.

Anyway i'm still opened to other sugestions, for now i'll use your's ;)

Oh and by the way, could you just give a brief explanation of both files and respective commands, [files] "d1,RunOnce.cmd" and [sourceDisksFiles] "RunOnce.cmd = 1,,,,,,,1,0,0"?

André Casal

Edited by andregcasal
Link to comment
Share on other sites

Hi Bezalel!

I don't want to use $OEM$ folders for two reasons. First, because i don't want to copy the huge amount of software to the hard drive, but install it directly from the CD/DVD, it would increase install time too. The second one is related to the first one, I mean, even if i choose not to install all the software it will be copied anyway, rigth? Again, i don't want that :)

Link to comment
Share on other sites

Well, Delprat, although your reply gaved me great help, i still need a way to install software in the T-13 (or 12) minute stage of the instalation.

If anyone knows a way to do this, please help :)

André Casal

Link to comment
Share on other sites

If you keep changing the origional post the answers may or may not be applicable. instead start a new post for new questions.

My question is pretty simple: How can i install software in the T-13 (or 12) minute stage, in a way that i can choose from two boot folders, one that installs the software, and the other that doesn't, using the same Source.

Modify one of your dosnet.inf/txtsetup.sif file sets to copy a tagfile to your HD. At T-12 call a script from cmdlines.txt that checks if your tagfile exists on your HD and installs software. You will need an $OEM$ folder to hold the cmdlines.txt but the source files can be anywhere on the CD. (I keep these files under $OEM$ but not in one of the special folders that get copied to the HD.)

You can also use DetachedProgram in one of your winnt.sif files but this might be to early for some installations.

Link to comment
Share on other sites

My question is pretty simple: How can i install software in the T-13 (or 12) minute stage, in a way that i can choose from two boot folders, one that installs the software, and the other that doesn't, using the same Source.

Well personally I think you need to take a look at the Switchless Installers Addon Packs forum at ryanvm.net and the How To Make A 7-Zip Installer topic here.

I used to install all my apps via svcpack using switchless installers addons (before I started my multi-boot disc, now I need two discs) and these places helped me the most. You'll also find tutorials about this in the forums at ryanvm.net.

As far as the "using the same Source" bit goes, it's not possable your gonna need two boot folders, two setup folders and two boot sectors two acheve your goal. One with your standard setup and the other with your T-13 software setup.

Your taking on a big task here (trust me I've done it). First learn about multi-boot discs then move on to the software setup, it'll make your life alot easier.

Good luck.

Edited by kof94
Link to comment
Share on other sites

If you keep changing the origional post the answers may or may not be applicable. instead start a new post for new questions.

Modify one of your dosnet.inf/txtsetup.sif file sets to copy a tagfile to your HD.

I know, i just felt that the question was allways around the same thing and didn't felt the need for a new topic, won't make the same mistake again ;).

Anyway, if i understood right i just need to change one of dosnet.inf or txtsetup.sif to copy the tagged file to the HD, right? But you told me to change both; what do we win by changing both and not just one?

kof94 I've been reading the "How To Make A 7-Zip Installer" topic but i fell no need for that kind of installer. I use WinRar to create my SFX archives with switches in them. Works perfectly... The problem is to put them to work :whistle:

Thank's!

André Casal

Link to comment
Share on other sites

WinRAR or 7-Zip is good, it's just that 7-Zip is free to every one.

Heres a lil linky to a tutorial at ryanvm.net about making cabbed installers for use with the RVM Integrator, Just read Aserone's post half way down.

The Idea is to have all your installers as seperate addons (you could make a one-for-all addon but I found it easier to have individuals) the integrator will make all the amendments to dosnet and txtsetup for you.

As I said before this is a big task and I should have said that your gonna have to learn abit about addons for your T-13 install. They just make everything so much easier to manage. I know I keep harping on about ryanvm.net but it's the only place around to learn about this stuff, well that I know about anyway!

Cheers.

Edited by kof94
Link to comment
Share on other sites

I havn't done this in a while but I'll give you a guide of my own.

Here goes:

* = the name of your app.

Make a new folder on your desktop called *_Addon

Inside it make a folder called svcpack and a file called entries_*.ini.

Put your switchless installer inside the svcpack folder.

Open your entries_*.ini and past this into it.

[general]
builddate=
description=
language=
title=
version=
website=

[EditFile]
I386\SVCPACK.INF,SetupHotfixesToRun,AddProgram

[AddProgram]

You can now fill it out as you see fit, the important bit is the name of your installer which must appear after [AddProgram].

Here is an example from a Firefox addon.

[general]
builddate=05/02/2006
description=Mozilla FireFox 1.5.0.3
language=English
title=Mozilla FireFox
version=1.5.0.3
website=Created by HyPo

[EditFile]
I386\SVCPACK.INF,SetupHotfixesToRun,AddProgram

[AddProgram]
ffox1503en.exe

Now all you have to do is cab it and duplicate the process. I suggest CabTool for ease of use.

Finally integrate all your addons into your source with the RVM Integrator.

One thing to bear in mind is the install order as the windows setup will read through the svcpack dir alphabetically installing your apps as it goes. I put a Z infront of all my installers names so they appeared after the hotfix updates. I also added a second Z for my internet security stuff so that it installed last.

I hope this helps and again good luck.

Link to comment
Share on other sites

Oh and by the way, could you just give a brief explanation of both files and respective commands, [files] "d1,RunOnce.cmd" and [sourceDisksFiles] "RunOnce.cmd = 1,,,,,,,1,0,0"?

dosnet.inf [files] section only lists the files on the CD ; the "d1" specifies the disk id.

txtsetup.sif [sourceDisksFiles] section is waaaaayyy more complicated, it list the files, their source location (if not i386, it's the first 1, which match a line in [i-don't-remember]), their destination directory (the second "1", which match a line in [WinntDirectories]), their destination file name, and some special values that i don't understand correctly...

I use that as a black box :blushing:

As far as the "using the same Source" bit goes, it's not possable your gonna need two boot folders, two setup folders and two boot sectors two acheve your goal. One with your standard setup and the other with your T-13 software setup.

proverb: "not possable" is not french (well, it's also not english, but that's not the question :D )

Winnt.sif has a "DetachedProgram=" feature, that launch a program at T-39 : in one install it can launch a .cmd that will create that tag file you spoken about (INSTTAG) ; in the other install it will be omitted.

When RunOnce.cmd is launched (first line of [GuiRunOnce] i presume), it looks for INSTTAG, if it exist it installs the progs, then it creates another tag, RANTAG (regardless of INSTAG presence).

When RunOnceBoth.cmd is launched (second line of [GuiRunOnce] i presume), it looks for RANTAG, if it exists, it deletes INSTTAG, RunOnce.cmd and RunOnceBoth.cmd

Again, it seems complicated...

The only advantage is that having a single source is easier to update

About the creation of the installers, the addon method gets more complicated : your addons needs to look for INSTTAG presence, and this will complicate things (you'll need to remove the RunOnce.cmd and keep only RunOnceBoth.cmd, and add a cmd file in each addon). If you want to use the method i described, i urge you to prefer installers (best suited for RunOnce©) : they can be SFX, SFX switchless, or any other (MSI files, original setups, etc...).

Note that the RunOnce.cmd file i'm talking about should not look like the one described in the unattended guide : it's only a list of commands to run. Example :

@echo off
REM checks for INSTTAG :
If not exist C:\INSTTAG goto :end
for %%i in (D E F G H ... X Y Z) do set CDROM=%%i:
start /wait %CDROM%\Installers_directory\OneProg\setup.exe /silent
start /wait %CDROM%\Installers_directory\AnotherProg\install.exe /s
start /wait msiexec /i %CDROM%\Installers_directory\MSIProg\msifile.msi /passive
start /wait %CDROM%\Installers_directory\OneWinRARSFXinstaller\setup.exe
...
:end
REM creates RANTAG :
echo something>C:\RANTAG

explanation : in the unattend guide, Runonce.cmd is ran @ T-12 from cmdlines.txt and creates registry entries to be processed at firt gui boot ; in my method RunOnce.cmd is ran @ first gui boot by Winnt.sif [GuiRunOnce]...

PS: example of RunOnceBoth.cmd :

@echo off
:deb
REM checks for RANTAG
if exists C:\RANTAG goto :finishhim
REM waits about 5 seconds :
ping -n 5 127.0.0.1>nul
goto deb

:finishhim
del /f /q c:\RANTAG
del /f /q c:\INSTTAG
del /f /q %Windir%\RunOnce.cmd
del /f /q %Windir%\RunOnceBoth.cmd

++

edit: to create INSTTAG via DetachedProgram= :

DetachedProgram="c:\windows\system32\cmd.exe /c ""@echo something > c:\INSSTAG"""

Edited by Delprat
Link to comment
Share on other sites

Proverb: You learn something everyday :D

I agree this is just a pain in the a** way of doing things!

I still can't see the point of having a single source when you've got utils like CDImage. You might aswell have two boot options,it's not that difficult to update two! Or am I missing something? :unsure:

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...