Run a prerequisite silently along with application setup in visual studio 2010 - visual-studio-2010

I am trying to create a setup of my application along with all of it's prerequisites.
I want iTunes as prerequisite for my application, and want to install it silently along with my application. i.e. I want to install my prerequisite silently.
I have made bootstrap package for iTunes(now it is appearing in prerequisites list) and made by set up.
The set up is asking for installation of iTunes when it is run.
I want my iTunes set up to run silently along with the application setup.
Now it is showing dialog box :
"The following components will be installed on your machine:
[Component List] Do you wish to install these components? If you
choose Cancel, setup will exit. [Install Button] [Cancel Button]"
I am using Visual Studio 2010 install project (this is not an install shield project).
How to achieve this?

As far as I know, that message:
"The following components will be installed on your machine: [Component List] Do you wish to install these components? If you choose Cancel, setup will exit. [Install Button] [Cancel Button]"
is not from the setup.exe, or your MSI setup, so it must be coming from one of your prereqs like iTunes, but the component names are not shown so I've no idea which one. Either way, it looks like your silent install command line is in fact not silent. Don't assume that they are all the same.

Related

Create an installer that requires installing other app in VS2010

I'm trying to create an installer in VS2010.
My situation is: I have 2 app, during installing a application, I need to check if the other app exists or not. If it exists, just install the first app, otherwise install both of them. How can I do this in VS2010. I've searched and find a solution here. But I don't know where I can put these codes.
Any instruction in details would be appreciated.
Thank you.
You probably will want to look into creating a Custom BootStrapper
From above link:
The Setup program is a generic installer that can be configured to detect and install redistributable components such as Windows Installer (.msi) files and executable programs. The installer is also known as a bootstrapper. It is programmed through a set of XML manifests that specify the metadata to manage the installation of the component.
The bootstrapper first detects whether any of the prerequisites are already installed. If prerequisites are not installed, first the bootstrapper shows the license agreements. Second, after the end-user accepts the license agreements, the installation begins for the prerequisites. Otherwise, if all the prerequisites are detected, the bootstrapper just starts the application installer.

How can I stop the installation of prerequisites to pop every time in advanced installer?

I am creating the deployment project (.MSI) for my .NET Windows project (Visual Studio 2010) using the advanced installer 8.x by adding some driver and 3rd party SDKs. I added them as prerequisites by choosing the product keys as conditions, but when I run the project it’s popping the prerequisites even after they get installed. Its status is not changing to installed and popping up every time.
How can I fix it?
Prerequisites use detection criteria to determine if they are installed or not. So most likely your prerequisite install conditions are not correct.
Usually a prerequisite is detected by searching for a file or registry entry installed by it. To see what files and registry entries are installed by a package you can use Process Monitor or a repackager tool.

basic MSI installer created using VS requires Administrator

There is similar questions on SO such as this and this however both suggest ClickOnce which I don't (can't) use.
I have started a new Setup project (InstallAllUsers=false) and have specified theApplication Folder to be [LocalAppDataFolder][ProductName]
which at install time points to
C:\Users\nonadmin\AppData\Local\Setup1\
When running the installer on Windows 7 as a non-admin I get this:
From my perspective it appears all the MSI does is copy the one text file to C:\Users\nonadmin\AppData\Local\Setup1\, something that could be done manually without this popup showing
The error message says something about 'unknown publisher' - does this occur for any msi/exe that simply runs? (even if it does nothing)
How can I avoid this dialog (a la ClickOnce) for non-admin users?
To avoid a consent prompt, you need to mark the package as "UAC compliant." (See "Guidelines for Packages" in the MSI SDK.) It looks like Visual Studio deployment projects don't support that bit so you'd have to modify the package in a post-build script (or use a different tool, like Wix that supports it directly).
Any package or executable that isn't Authenticode signed shows up as "Unknown publisher."

ClickOnce custom prerequisite problem with installation

I have created custom prerequisite setup project for ClickOnce and it is among the other prerequisites in publish tab of the project. But when i try to install my app via ClickOnce(with setup button) it runs prerequisite setup, and asks if i want to install it. I click "install" and the following error appears:
The following package files could not
be found:
C:\Users\..\AppData\Local\Microsoft\Windows\Temporary
Internet
Files\Content.IE5\U2R49322\FontPrerequisite\setupfont.msi
When i launch the application-it installs it, but without prerequisite. What can cause the problem?
This is a wild guess, but I would assume that you've specified that the user should download the prerequisite from the vendors site. Open the Prerequisites dialog and select your prerequisite. Click on the option that states Download prerequisite from the same location as my application. (See the screen shot below)
This should bundle your prereq with your application deployment. Hope that helps.

How to install VC redistributables in Advanced Installer?

There are many articles and posts about how to include VC runtimes in an MSI file.
I am using Advanced Installer and VS2008
Some say use Merge Modules; I am not sure they will work correctly ie. if they go in before my services (which depend on them) start up during the install, and also merge modules seme to have have an annoying habit of demanding a reboot on uninstall;
I have tried simply copying the .exe redistrutable packages from MS and using a custom-action under Install to execute them with the /q switch. I can run other installers like this (eg. SQLITE) and it works. But the MS files don't seem to become installed. They certainly don't show up in the Programs or Updates list.
Does anybody know a simple, effective way to incorporate the VC2008 runtimes into an MSI installation?
This is usually done through prerequisites. Currently Advanced Installer has predefined prerequisites for most Visual C++ redistributables. So all you need to do is add them to your project.
If you run the Visual C++ Redistributable as part of Advanced Installer Custom Action without the /q switch you will see it fails with error 'Another installation is currently in progress'.
I am experimenting with installing the pre-requisite first (before install phase of installer) or if that fails, I will use the Predefined Prerequisites (above). However, to have /q on the VCRedist when a Predefined Prerequisite requires an enterprise license, which I don't have ..
Update
Resolved as follows:
Include the VCRedist in your installer
Have a new Custom Action to 'Launch Installed File', choose the VCRedist from your installed files
Use command line /install /q /norestart
Drag the custom action last in the list after 'Finish Execution'
Your Custom Action dialog should look something like this

Resources