Jump to content

RunOnceEx.cmd how to create fresh install window


kof94

Recommended Posts

Can anyone tell me if there's a command I can add to RunOnceEx.cmd to create a new window.

Abit like WPI were you can specify how many programs are displayed in a window before a new one is created.

Thanks.

Link to comment
Share on other sites


I'd be interested in this. My box is huge and I can't see one end to the other. Is it possible to break it up into two windows, or make a sort of "RunOncePart1" and "RunOncePart2" thing so that I can get two smaller boxes instead of one huge one?

Link to comment
Share on other sites

Syntax to start a new instance of rununceex:

rundll32.exe iernonce.dll,RunOnceExProcess

Just add that to run the entries that preceede it.

For an example, I'll attach my scripts, well actually, the whole little pile in $OEM$.

btw,

My apps start setting up just prior to last scheduled reboot, the last entries then run after reboot.

Notice it calls on roex2.cmd which adds my security apps for install after reboot #2, then one last reboot to finish the job, this could go on and on. I do this because too many installs without a reboot = bad news. I feel I'm pushing it, but so far so good...

~happy deployment!

_OEM_.zip

Edited by thuun derboy
Link to comment
Share on other sites

  • 4 weeks later...

Been a while since startin this thread but I've only just got round to properly implimenting this and I have another question.

How can I use this for the end of install i.e. one runonceex.cmd.

Should I just add

rundll32.exe iernonce.dll,RunOnceExProcess
as an add reg command?

Also, can I still add titles for each box, if so how?

The only other idea I had was to add ROEX.CMD as a reg in a previous RunOnceEx.cmd executed at T-12.

Any ideas greatly appreciated.

Thanks.

Edited by kof94
Link to comment
Share on other sites

Syntax to start a new instance of rununceex:

rundll32.exe iernonce.dll,RunOnceExProcess

Just add that to run the entries that preceede it.

For an example, I'll attach my scripts, well actually, the whole little pile in $OEM$.

btw,

My apps start setting up just prior to last scheduled reboot, the last entries then run after reboot.

Notice it calls on roex2.cmd which adds my security apps for install after reboot #2, then one last reboot to finish the job, this could go on and on. :}

~happy deployment!

Oooh hold on guys.

You simply add a runonceex2.cmd command at the final step of your runonceex? This way you are giving up installation time just because the list of apps doesn't fit in the RunOnceEx list? That's a shame!

I do this because too many installs without a reboot = bad news.

No thats a false conclusion from correct experiences. You need to understand why a reboot would be necessary for an install. Files might be in use, tasks have to be performed (an AV for example) etc. This cannot effect the installation of other software. Also, when RunOnceEx is running there are few other processes running. I (and many more people) can install over 100+ apps before rebooting.

Why don't you group items together, for example I use 'system tools' for AV and lots of other things...

I only have a small list, advantages during install:

+ readable for everyone

+ in just one-view you see how many items there are

I must be honest, I have 2 RunOnceExs as well, but for a totally different reason. Check my CMDLines.txt:

[COMMANDS]
"RunOnceEx.cmd"
"REGEDIT /S regtweaks.reg"
"users.cmd"
"CHKNTFS /T:0"
"rundll32.exe iernonce.dll,RunOnceExProcess"

This way, RunOnceEx will start at T12 (directly after cmdlines and its commands have finished).

But there are 3 things I cannot let this RunOnceEx do, they have to be done after the 1st reboot:

-Activate WinXP with an AutoIt script (not via internet ;) )

-install WM10Lite

- start WIHU at the end so installing user can create accounts etc.

It is logical that these things HAVE to run after reboot, so I simply create a 2nd RunOnceEx for this. It is not meant for installing apps/adding regtweaks/cleaning up etc.

This is how you start a second RunOnceEx, simply by adding the command to your first RunOnceEx:

blablabla (Your 1st RunOnceEx)

and as final you give the command to start 2nd RunOnceEx:
(wich will be executed at the next reboot. For me, this means after the 1st boot)

REG ADD %KEY%\040 /VE /D "tasks after restart" /f
REG ADD %KEY%\040 /V 1 /D "%CDDRIVE%InstallApps\InstallSettings\RunOnceEx.cmd" /f

Notice my 2nd RunOnceEx has the same name as my 1st, but it is located elsewhere.

So my 2nd RunOnceEx actually gets executed at the moment most other people execute their RunOnceEx for installing apps etc.

I really DO NOT recommend you use this just to split your long RunOnceEx in pieces, it means it will take a lot time to finish and it is just not a nice method. Grouping is the best.

--> BTW, if grouping items still doesn't help you, you could use the Rundll32 command+RunOnceEx2 --> in 1 startsecondROE.cmd file, and let your first RunOnceEx execute this file at the end.

After your 1st RunOnceEx has finished, a 2nd one should start immediately ;)

EDIT:

it is in Dutch, but here is my (1st) RunOnceEx, you can see how I grouped items:

EDIT2: Actually I still haven't been that honest. I also have a big 7zip file (it is called SYSTEMDRIVE.7z, check the RunOnceEx) wich contains many small apps like ExactAudioCopy, MediaPlayerClassic, Nvu (free websitebuilder) and lots of other software that don't need an installer but can be extracted to their location. Also contains settings.ini for apps, Winamp plugins etc. Since I now narrowed down the list of items to be installed, what is rest can be easily grouped in the RunOnceEx. :)

Edited by ZileXa
Link to comment
Share on other sites

Oooh hold on guys.

You simply add a runonceex2.cmd command at the final step of your runonceex? This way you are giving up installation time just because the list of apps doesn't fit in the RunOnceEx list? That's a shame!

Now you know why I added to this post!

I must admit you are right, rebooting doesn't matter and I wasn't planning on having a two part runonceex install anyway.

As far as grouping goes, I was doing this already but I then started playing with WPI.

I like the way it does a catagory install and just wondered how it was done, and weather it was worth implimenting into my existing RunOnceEx.

At the moment it's running at T-12 cos of this

rundll32.exe iernonce.dll,RunOnceExProcess

and that ain't when I want it run.

If there isn't a simple way of doing this then don't worry about it, I'm thinking of switching to WPI after the next release anyway.

Cheers.

Link to comment
Share on other sites

Ok, I've finally worked this out so I thought I'd put the final nail in this coffin!

My method is basicly the same as thuun derboy's (much thanks) but turned on it's head.

@ZileXa as I said before I agree with you about the restarts. I've just started using CDswitch cos of the amount of stuff I install in one hit and I've never encountered any problems because of it.

Grouping is all well and good and the vast majority of people probably use this (I did) but that doesn't answer the question of a WPI style install though.

I was going to try out seperate commands executed after each other...

....Rundll32 command+RunOnceEx2 --> in 1 startsecondROE.cmd file, and let your first RunOnceEx execute this file at the end.

After your 1st RunOnceEx has finished, a 2nd one should start immediately....

...but I've found this makes little difference (apart from many .cmd files) from a single list.

I'm not trying to say my way is THE way here cos all circumstance are different and I appreciate others input but this is the way I do it.

So, if anyone wishes to run a RunOnceEx install, from CD/DVD, at first logon (not T-12) with a WPI style component install this is how I'm doing it.

This IS a two part afair consisting of one RunOnceEx command executed at T-12 via cmdlines.txt which in turn executes another at first logon.

Somthing like this:

T-12 - ROEx_1.cmd

@echo off
cmdow @ /HID

FOR %%i IN (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 %%i:\WIN51 SET CDROM=%%i:

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

REG ADD %KEY%\001 /V 1 /D "%CDROM%\Setup\CUST\$OEM$\ROEx_2.cmd" /f

EXIT

(I'm running this from a multi-boot disc so just correct the path to where ever your ROEx_2.cmd is)

First logon - ROEx_2.cmd

@echo off
cmdow @ /HID

FOR %%i IN (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 %%i:\WIN51 SET CDROM=%%i:

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

REG ADD %KEY% /V TITLE /D "System Updates" /f
REG ADD %KEY%\005 /VE /D "Updating Registry" /f
REG ADD %KEY%\005 /V 1 /D "regedt32 /s %CDROM%\Setup\CUST\$OEM$\Twk.reg" /f
REG ADD %KEY%\015 /VE /D ".NET Framework 2.0" /f
REG ADD %KEY%\015 /V 1 /D "%CDROM%\Software\System\DotNetFramwork20.exe" /f
REG ADD %KEY%\020 /VE /D "Java Runtimes 5.0 Update 6" /f
REG ADD %KEY%\020 /V 1 /D "%CDROM%\Software\System\JavaRuntimes50u6.exe" /f
REG ADD %KEY%\025 /VE /D "K-Lite Mega Codec Pack 1.49" /f
REG ADD %KEY%\025 /V 1 /D "%CDROM%\Software\System\KliteMegaCodecPack149.exe /silent" /f
rundll32.exe iernonce.dll,RunOnceExProcess
REG ADD %KEY% /V TITLE /D "Compression Tools" /f
REG ADD %KEY%\005 /VE /D "7-Zip 4.32" /f
REG ADD %KEY%\005 /V 1 /D "%CDROM%\Software\Compression\7-Zip432.exe /S" /f
REG ADD %KEY%\020 /VE /D "UPX Shell 3.2.1.2007" /f
REG ADD %KEY%\020 /V 1 /D "%CDROM%\Software\Compression\UPXShell_321.exe /SILENT /SP-" /f
REG ADD %KEY%\030 /VE /D "WinRAR 3.51" /f
REG ADD %KEY%\030 /V 1 /D "%CDROM%\Software\Compression\WinRAR351.exe" /f
REG ADD %KEY%\080 /VE /D "Cleanup and Reboot" /f
REG ADD %KEY%\080 /V 1 /D "%CDROM%\Setup\CUST\$OEM$\Cleanup.cmd" /f
rundll32.exe iernonce.dll,RunOnceExProcess
EXIT

This is a truncated older version of what I'm using now but it gives you an idea of whats going on.

By executing this line....

rundll32.exe iernonce.dll,RunOnceExProcess

....your starting/restarting the install and so creating a new RunOnceEx box. Windows will read from the registry all the previous values added (ADD REG). This process will continue until the end of ROEx_2.cmd is met.

As with everything checkout http://unattended.msfn.org/unattended.xp/ if you have no idea about RunOnceEx or unattended installs.

Ok thats it, I know this probably sucks eggs abit for all of you who are in the know out there but this might help someone else waste time make pretty, WPI style, RunOnceEx boxes like me. :P

Peace.

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