Jump to content

cmdlines.txt VS. svcpack.inf


Recommended Posts

Ok, sorry if this was discussed already or if these are stupid questions, but here goes nothin':

:blushing:

I have just began to work with unattended installs of xp and otehr software. I read through all the tutorials on msfn (beginner, intermediate and advanced), and I am just confused about a few things... (i apologize if these are n00b questions)

1. what is the difference between cmdlines and svcpack?

2. Is svcpack used only to install xp hotfixes? or can it be used to install other software as well? If so, is it supposed to call another batch file to run the installations? (Sorry, I understand how cmdlines works, but SVCPACK confuses me for some reason, so if someone can explain it a little further that would be great).

3. Can I get some users opinions about which they use and for what? cmdlines.txt, svcpack.inf, RunOnceEx? Right now I have Office 2003 set to install at cmdlines.txt, it calls a batch file which calls the office installation and others. Is this correct? Or is the svcpack.inf or runonceex method better for office (and otehr apps)?

4. Can someone quickly explain Xplode... is it a replacement for RunOnceEx? (this question is not that important right now, I want to get the basics down first, but a quick explanation would be nice)

If anyone can help with the above, I would appreciate it! :)

thanks,

atomic.rabbit

Link to comment
Share on other sites


'lo,

1. cmdlines.txt need a winnt.sif file with OemPreinstall=Yes ; svcpack.inf is always parsed. It mean that cmdlines.txt will disable the ability to do repair-install ; and svcpack.inf will also be ran during repair-install (allowing you to use the same disc both for new installs and upgrades)

2. In svcpack.inf, the [setupHotfixesToRun] section is very similar to the [Commands] section in cmdlines.txt. Example :

;Windows XP
[Version]
Signature="$WindowsNT$"
MajorVersion=5
MinorVersion=1
BuildNumber=2600

[SetupData]
CatalogSubDir="\i386\SVCPACK"

[ProductCatalogsToInstall]

[SetupHotfixesToRun]
MyFirstSwitchlessInstaller.exe
MyProgramSetup.exe /themagicsilentswitch

If these two .EXE are in i386\SVCPACK, they will install, one after the other.

++

Edited by Delprat
Link to comment
Share on other sites

First off, thanks for replying so quickly, delprat

1. So if I use svcpack, does oempreinstall have to be set to "yes"?

2. few questions for this section:

a. If I already have the windows Hotfixes slipstreamed into the installation (via the /INTEGRATE switch), do I have to add the CatalogSubDir="\i386\SVCPACK" line?

b. What is the "[ProductCatalogsToInstall]" section for?

c. Can I run any installation in the "[setupHotfixesToRun]" section

d. Can you (or someone else) post their own svcpack.inf file, or an example of one with applications.

3. If I use the svcpack method, what happens with the $OEM$ Distribution Folders that I set up? Does it need these anymore?

4. Is RunOnceEx a better method for installing applications than svcpack?

5. Do I have to edit the DOSNET.inf file when using the svpack.inf method?

Thanks again for your help! :thumbup

*atomic.rabbit

Edited by atomicrabbit
Link to comment
Share on other sites

i'm not always so quick... :(

1. You don't need the winnt.sif file to use svcpack.inf (there are two differents things, you can use one or the other or both)

2.a. If the CatalogSubDir line is already there, use the specified folder, or rename both the line and the folder (you must have only one CatalogSubDir line)

2.b. It installs *.CAT files (provided with hotfixes for example).

2.c & 2.d. already answered

3. see point 1

4. some apps won't install @T-13. ex .net fx 2 need a special fix. diskeeper 8 will fail to install its service. If you are unsure and don't want to test, use ROE.

5. no

++

Link to comment
Share on other sites

:blushing:

Would it be better to run a batch file from svcpack (like cmdlines.txt) or should I just put each installer into the svcpack directly?

I've already slipstreamed the windows hotfixes into my installation via /integrate switch, do I have to add each one to the SVCPACK.INF file as well?

ie.

[SetupHotfixesToRun]
KB873339.exe
KB885626.exe
KB885835.exe
...etc...

Thanks.

*atomic.rabbit

Edited by atomicrabbit
Link to comment
Share on other sites

"better" ? i can't know.

[setupHotfixesToRun] allow to launch .EXE (with switches if needed) from the "CatalogSubDir" folder.

If that's not enough for you to install your apps, use a batch (classic case : you have an archive to decompress in %systemroot%)

Only thing to keep in mind : create something easy to use, to update, etc. (that is, avoid to run installers directly from svcpack.inf or from cmdlines.txt if you're also using a batch : simply run everything from that batch)

++

Edited by Delprat
Link to comment
Share on other sites

Sorry I edited my post above, I added a question.

Also, how do I know what the major/minor version, and build number is??

i.e.

;Windows XP
[Version]
Signature=" NT$"
MajorVersion=5
MinorVersion=1
BuildNumber=2600

Edited by atomicrabbit
Link to comment
Share on other sites

I've already slipstreamed the windows hotfixes into my installation via /integrate switch, do I have to add each one to the SVCPACK.INF file as well?

if you used hotfixes with /integrate, they are not slipstreamed, but integrated : in other words, hotfix installation will occur during windows setup (slipstreaming is more complicated, and you'll need other tools like hfslip or nlite, or use an updatepack)

but you don't have to modify manually svcpack.inf if you use /integrate...

Also, how do I know what the major/minor version, and build number is??

i.e.

;Windows XP
[Version]
Signature=" NT$"
MajorVersion=5
MinorVersion=1
BuildNumber=2600

You already know : go back on the page you took this erroneous code (Signature="$WindowsNT$")...

Or run winver.exe.

Or integrate any hotfix, it will create a correct svcpack.inf (you integrated some HF, did you ?)

++

Edited by Delprat
Link to comment
Share on other sites

yes i did integrate hotfixes, but it did not create a svcpack.inf file. Should it have? The integration worked properly. I know this because i tested the installation and it installed all the hotfixes correctly, but it did not create an svcpack.inf file in the svcpack folder.

Link to comment
Share on other sites

Ok i just test my xp installation and it didn't work. Well, the application installations didnt work (from svcpack)

Can I place the applications (ie. office, .net 1.1, jre, etc) into a subfolder of svcpack, or does it have to be in the root svcpack directory for it to work?

This is my svcpack.inf file:

;Windows XP
[Version]
Signature="$Windows NT$"
MajorVersion=5
MinorVersion=1
BuildNumber=2600

[SetupData]
CatalogSubDir="\i386\SVCPACK"

[ProductCatalogsToInstall]

[SetupHotfixesToRun]
START.CMD
RunOnceEx.cmd

this is my START.CMD file:

@ECHO OFF

ECHO.
ECHO Creating user account(s)
ECHO Please wait...
net user username passowrd /add
net localgroup Administrators username /add
net accounts /maxpwage:unlimited

ECHO.
ECHO Installing Windows Installer 3.1 Redistributable (v2)
ECHO Please wait...
start /wait Install\NetFramework\KB893803.exe /Q /O /Z

ECHO.
ECHO Installing .NET Framework v1.1 with SP1
ECHO Please wait...
start /wait Install\NetFramework\dotnet11sp1.exe

ECHO.
ECHO Installing Sun Java2 Runtime Environment v5.0 Update 7
ECHO Please wait...
start /wait Install\JRE507\jre507.exe

ECHO.
ECHO Installing Windows Media Player 10
ECHO Please wait...
start /wait Install\WMP10\mp10setup.exe /q:A /c:"setup_wm.exe /Q /R:N /DisallowSystemRestore"

ECHO.
ECHO Installing Office 2003 Professional
ECHO Please wait...
start /wait Install\Applications\Office2003\officeex.exe

This is my RunOnceEx.cmd:

cmdow @ /HID
@echo off

SET KEY=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx

REG ADD %KEY% /V TITLE /D "Installing Applications" /f

REG ADD %KEY%\005 /VE /D ".NET Framework v2.0" /f
REG ADD %KEY%\005 /V 1 /D Install\NetFramework\dotnet2.exe" /f

It just installed the Windows Installer 3.1 and the windows hotfixes, nothing else. :(

Do you see anything wrong with this? Do I have to edit any other files with the svcpack.inf method?

On the tutorial page for svcpack.inf ( http://unattended.msfn.org/unattended.xp/view/web/24/ ) it says to edit DOSNET.inf

Edited by atomicrabbit
Link to comment
Share on other sites

There is no integrated hotfixes in the svcpack.inf you posted. Did you checked for the cabbed one ? (svcpack.in_)

(you must have only one)

Second point, you must place your two batches (start.cmd & runonceex.cmd) in svcpack\ and you can place your installers anywhere.

Only error you did is that your batches are not calling them with full pathes.

If your "Install" folder is in the root of your CD, you should do like this :

@ECHO OFF

REM "WIN51" = ident file for WinXP
FOR %%d in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) DO IF EXIST %%d:\WIN51 SET CDROM=%%d:
SET KEY=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx

ECHO.
ECHO Creating user account(s)
ECHO Please wait...
net user username passowrd /add
net localgroup Administrators username /add
net accounts /maxpwage:unlimited

ECHO.
ECHO Installing Windows Installer 3.1 Redistributable (v2)
ECHO Please wait...
start /wait %CDROM%\Install\NetFramework\KB893803.exe /Q /O /N /Z

ECHO.
ECHO Installing .NET Framework v1.1 with SP1
ECHO Please wait...
start /wait %CDROM%\Install\NetFramework\dotnet11sp1.exe

ECHO.
ECHO Installing Sun Java2 Runtime Environment v5.0 Update 7
ECHO Please wait...
start /wait %CDROM%\Install\JRE507\jre507.exe

ECHO.
ECHO Installing Windows Media Player 10
ECHO Please wait...
start /wait %CDROM%\Install\WMP10\mp10setup.exe /q:A /c:"setup_wm.exe /Q /R:N /DisallowSystemRestore"

ECHO.
ECHO Installing Office 2003 Professional
ECHO Please wait...
start /wait %CDROM%\Install\Applications\Office2003\officeex.exe


REG ADD %KEY% /V TITLE /D "Installing Applications" /f

REG ADD %KEY%\005 /VE /D ".NET Framework v2.0" /f
REG ADD %KEY%\005 /V 1 /D "%CDROM%\Install\NetFramework\dotnet2.exe" /f

I merged your two batches in this sample (if you want to keep them separated, copy the FOR... line in both in order to be able to use the %CDROM% variable).

I see no switches for JRE & Office, i suppose you made silent installers.

about dosnet.inf, again, you used /integrate, you do not need to edit dosnet.inf and you do not need to create svcpack.inf.

Edited by Delprat
Link to comment
Share on other sites

There is no integrated hotfixes in the svcpack.inf you posted. Did you checked for the cabbed one ? (svcpack.in_)

(you must have only one)

That's what I was trying to tell you before. I used the integrate switch on the windows hotfixes, but it did not create a svcpack.inf file AND it worked fine during the install. It installed ALL the included hotfixes with no problems.

Second point, you must place your two batches (start.cmd & runonceex.cmd) in svcpack\ and you can place your installers anywhere.

Only error you did is that your batches are not calling them with full pathes.

My batch files are already in the svcpack directory. The Install directory is inside the svcpack directory as well. So my dir structure looks like this:

<CD DRIVE>

  • i386
    • svcpack
      • Install (directory)
        • all application installers are here

        [*]Start.cmd

        [*]RunOnceEx.cmd

I will try making a full path... so an example of it would be:

%CDROM%\I386\SVCPACK\Install\NetFramework\KB893803.exe

correct? I just didn't think I would need a full path since the directory it was referring to (Install directory)was inside the svcpack directory.

I see no switches for JRE & Office, i suppose you made silent installers.

Yes, I downloaded a switchless install of JRE from Ryans site, and when I was having trouble setting up office at CMDLINES.txt, so i did some research and found Nankai's OfficeExec. I don't know how good it is, but it did the trick when i was installing it during cmdlines. Don't know if it will work properly in svcpack. I will test with full paths, and get back to you with a result

Thanks again!

atomic.rabbit

Edited by atomicrabbit
Link to comment
Share on other sites

That's what I was trying to tell you before. I used the integrate switch on the windows hotfixes, but it did not create a svcpack.inf file AND it worked fine during the install. It installed ALL the included hotfixes with no problems.

Thus it created a svcpack.in_ file, it's a cabbed (compressed) version. you'll need to un-cab it before editing it.

This command uncabs it :

expand -r svcpack.in_

This one recabs it (not needed if you delete svcpack.in_) :

makecab svcpack.inf

If you don't have a svcpack.in_ file, then you've found secret editions of MS hotfixes that works magically. i'm not a wizard, and can't help with so unrational things. But i'm very interested by this sort of files :huh::blink:

My batch files are already in the svcpack directory. The Install directory is inside the svcpack directory as well. So my dir structure looks like this:

<CD DRIVE>

  • i386
    • svcpack
      • Install (directory)
        • all application installers are here

        [*]Start.cmd

        [*]RunOnceEx.cmd

I will try making a full path... so an example of it would be:

%CDROM%\I386\SVCPACK\Install\NetFramework\KB893803.exe

correct? I just didn't think I would need a full path since the directory it was referring to (Install directory)was inside the svcpack directory.

Example is ok, and your way to display dir structure is very good (i didn't knew that LIST tags could be imbricated).

I'm sure that the current directory is not <CDROM>:\I386\SVCPACK because it's something under %systemroot% during all the windows setup. (hit Shift+F10 during setup to see)

So you need full pathes. (or add CD /D "%~dp0" at the beginning of your batches, but this will not work for RunOnceEx which always requires full pathes)

++

Link to comment
Share on other sites

ok, i think i know whats going on.

I searched my xp cd for *svcpack*, and I found two. :huh: I have an svcpack.inf in the I386 directory. my newly created svcpack.inf is located inside the SVCPACK DIRECTORY. I was under the impression that svcpack.inf was supposed to go in the svcpack director,, but I guess its supposed to go in the i386 directory. :blushing:

This is probably why it is installing the hotfixes and nothing that I added to my new svcpack.inf (from the svcpack dir). It's reading the svcpack.inf in my i386 dir, not the svcpack dir. So I will add all the info to thge original svcpack.inf file and get back to you to tell you if it worked.

and thanks for the compliment about my directory structure. I didn't know list go do it either until now, but it just seemed logical :thumbup

I think i've written the word svcpack way too many times for my own good :lol:

Thanks for the troubleshooting help :) I'll post my results

*atomic.rabbit

Link to comment
Share on other sites

I think you catch that **** file. Yes it goes to i386 as written in the guide :

Save this as svcpack.inf in C:\XPCD\I386\. You must delete svcpack.in_ in the I386 directory otherwise Windows XP Setup will not use the svcpack.inf file.

About list tags, i never tried (i'm using fast reply, or the old editor, not the rtf one).

I think you should rename your CatalogSubDir to something else... <_<

To confuse yourself when you will update your disc, you can try :

CatalogSubDir="\i386"

and move the original one to its parent -_-

++

Edited by Delprat
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...