Jump to content
ricktendo

[Video] How To make Silent Switch Installers

Recommended Posts

@ricktendo

 

Rick, can you check the syntax for the following. I keep getting confused with when to and when not to use quotes and / characters. Also I was wondering if the code can be shortened or cleaned-up in any way? For example can I leave the msiexec out? Any insight you can provide is much appreciated.

;!@Install@!UTF-8!RunProgram="hidcon:\"%SystemRoot%\system32\msiexec.exe\" /i AppleApplicationSupport.msi TRANSFORMS="AppleApplicationSupport.mst" /qn";!@InstallEnd@!
OR
;!@Install@!UTF-8!RunProgram="hidcon:msiexec.exe /i AppleApplicationSupport.msi TRANSFORMS=AppleApplicationSupport.mst /qn";!@InstallEnd@!
OR
;!@Install@!UTF-8!RunProgram="hidcon:msiexec.exe /i AppleApplicationSupport.msi TRANSFORMS="AppleApplicationSupport.mst" /qn";!@InstallEnd@!
Edited by dotfusion

Share this post


Link to post
Share on other sites

The second one, and you can skip the msiexec part (you only need to use quotes if a filename or path has a space)

 

;!@Install@!UTF-8!RunProgram="AppleApplicationSupport.msi /qn /norestart TRANSFORMS=\"AppleApplicationSupport.mst\"" ;!@InstallEnd@!
Add %%T\\ to the transforms if it cannot be found
;!@Install@!UTF-8!RunProgram="AppleApplicationSupport.msi /qn /norestart TRANSFORMS=\"%%T\\AppleApplicationSupport.mst\"" ;!@InstallEnd@!

Share this post


Link to post
Share on other sites

Thanks for the insight, just one question, will the SFX installer stop with an error if the tranforms cannot be found?
 

Add %%T\\ to the transforms if it cannot be found

 

Also, if there are no spaces, then this would also work?

;!@Install@!UTF-8!RunProgram=AppleApplicationSupport.msi /qn /norestart TRANSFORMS="AppleApplicationSupport.mst";!@InstallEnd@!
Edited by dotfusion

Share this post


Link to post
Share on other sites

No... there NEEDS to be NORMAL quotes after RunProgram=<HERE>to the end of your command<HERE>

Quotes and backslashes in between these two need to be formated like this: \" and \\

To clarify %%T will turn into the extraction path

Share this post


Link to post
Share on other sites

Thanks again, I'm starting to understand and it's becoming quite clear. I would appreciate it If you could just give one last look at the syntax of the following 'config' before i post it. Thanks in advance.

 

Also I was wondering -- If the stock installer from Apple does not require a restart when installed on a live system if I could do away with the /norestart switch?

;!@Install@!UTF-8!;Default iTunes ONLY w/o prgress barRunProgram="AppleApplicationSupport.msi /qn /norestart TRANSFORMS=\"AppleApplicationSupport.mst\""RunProgram="x64:AppleMobileDeviceSupport64.msi /qn /norestart TRANSFORMS=\"AppleMobileDeviceSupport64.mst\""RunProgram="x64:iTunes64.msi /qn /norestart TRANSFORMS=\"iTunes64.mst\"";[/ai] iTunes/Bonjour w/o progress barAutoInstall="AppleApplicationSupport.msi /qn /norestart TRANSFORMS=\"AppleApplicationSupport.mst\""AutoInstall="x64:AppleMobileDeviceSupport64.msi /qn /norestart TRANSFORMS=\"AppleMobileDeviceSupport64.mst\""AutoInstall="x64:Bonjour64.msi /qn /norestart TRANSFORMS=\"Bonjour64.mst\""AutoInstall="x64:iTunes64.msi /qn /norestart TRANSFORMS=\"iTunes64.mst\""GUIMode="2"MiscFlags="4";!@InstallEnd@!
Edited by dotfusion

Share this post


Link to post
Share on other sites

Yea you can do away with /norestart if the program does not prompt you to reboot, and your config looks good

You could always add /norestart switch when you run your sfx, this will get passed along and added to all the RunProgram or AutoInstall commands

This is why SetIni.exe in my MsSecEs installer works, when you add xx-XX parameter it is added to the SetIni RunProgram and completes the command...it is also added to the setup.exe command but setup.exe ignores this

When you run my mseinstall_x86_x64_intl.exe es-ES this is what happens
 
 

RunProgram="hidcon:setini \"%%T\\%%P\\setup.ini\" Compat Market " <- es-ES is added here after space completing the setini command

 


Same goes when you use /ai es-ES, /ai is not added because the sfx recognizes this but it does not recognize es-ES so its passed along to the run commands

Share this post


Link to post
Share on other sites

Rick,

You could always add /norestart switch when you run your sfx, this will get passed along and added to all the RunProgram or AutoInstall commands

Switches added through command-line are passed only to the first Run or AI parameter in the working configuration for the 7zSFX.

For example, if the config.txt has multiple Run parameters and you want to pass a switch to the second or third Run parameter--it can't be done with the module at present time.

Share this post


Link to post
Share on other sites

Hai there,

Thx for the great tut ! I got a quistion.

I want make a silent installer with your tut but i got program that need a name and a reg code for full working. How can i let the silent installer input it automatic?

Many many thx

Sorry for my englisch

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...