Run additional EXE from 2012 InstallShield - c#

I have created an installshield project using the Limited edition 2012 of InstallShield.
My application uses the Microsoft Agent 2.0 control in some places. So my question would be :
How do i run the Agent installer from my install wizard? Either before the main app is installed or after...
Also, i have set a prerequisite on the setup project to include .NET 4.5 and the installer to require .NET 4.5...but if i uninstall .NET and run my setup, it simply says i need the .NET Framework, rather than installing it...any ideas?

Add a prerequisite installer for agent. And keep the one for.net, it shouldn't install if it is already present. If you don't need .net then look for a install condition that is requiring it.

Related

Installshield LE with chained package

Does anyone know if it is possible to create a chained package with LE?
I can create an installation msi with my project (C#) however I need to embed the MSSQL LocalDB installation with my project msi as it is an application requirement & I don't want my users to have to do this separately. Am trying to create a seamless installation for them.
Thanks
InstallShield can bootstrap/chain packages together using a feature called Setup Prerequisites. Unfortunately, InstallShield Limited Edition doesn't have the feature to create .PRQ (prereqs) files.
What I would do is throw InstallShield Professional on a VM and use the Prerequisite Editor to create the .PRQ file and then copy it into your ISLE development environment. Add this to your installer and InstallShield will preinstall the LocalDB engine.
See:
Using InstallShield 12 to Install .NET Framework 3.0

How to include both versions of SQL Server CE 4.0 Runtime in Install Shield wizard

I need to include both versions of SQL Server CE 4.0 Runtime in my install shield setup application so the user can use the same version of an installer on both system architectures (x86 and x64).
I found a good solution here: https://stackoverflow.com/a/10224981/382011
But this requires to create two diffrent installers for x86 and x64. In my case I need to combine those two into one setup. How can I modify PRQ files from example to achive it?
You could create a single bundled installer, that installs the correct package based on the machine architecture. To do this is quite easy using Burn from Wix, the following SO thread has an example.
After that you can create a single prerequisite file that installs the bundle.
The installation of the corespondent SQL Server CE prerequisite will be handled automatically by the bundle, so you will separate this logic from the main installer.

Does Visual Studio ClickOnce deployment automatically include the necessary .NET framework?

When using a ClickOnce installer, will it include the necessary .NET framework?
For instance, I want to distribute a WPF application that uses the System.ComponentModel namespace, which wasn't included until .NET 4.5. If I ran the ClickOnce on an older version of Windows that only had up through, say, .NET 3.0, would it still work?
The click once application will depend on the .NET 4.5 framework. You can include this as a redistributable through project settings -> publish -> prerequisites. In fact I think recent VS versions will already prepare a setup package to run through installing this during the pre-reqs section of your installer. You can even alter the location of where the redistributable package comes from.
In summary. It will "work" in that when someone runs your installer it will tell them they don't have the correct pre-reqs, and offer to install .NET 4.5
It will, if you install with the setup.exe installer. I haven't tried it for some time but it always worked like this.
If you link directly to *.application manifest, the .net framework and other dependencies will not be installed automatically.

Adding .Net framework updates to a setup project

I have a setup project which, as a prerequisite, requires the .Net 4 framework installed locally on the target machine. I specify the install location for prerequisites as "download prerequistes from the same location as my application" resulting in the dotNetFx40_Full_x86_x64.exe being added to the installer (since the target machines we install to are not connect to a network, i.e. standalone).
I'd also like the installer to recognise it needs to install any updates of the .Net 4 framework to the standalone target machine if required. What is the best way to accomplish this?
Thanks in advance.
If you know what updates are required, the simplest way to do it is probably just to create new bootstrapper packages for the standalone updates, and add them as additional prerequisites. There's more info on that here:
http://msdn.microsoft.com/en-us/library/ms165429.aspx

Is it OK to redistribute the utility installutil that ships with .NET?

I have a .NET service built with C# and it requires install util to be properly installed. However I don't trust that it's always in the right place when my installer runs on a customer's machine. Does Microsoft allow you to freely redistribute installutil with your products?
I'm pretty sure it is part of the .Net distribution package, so it should be there already on any machine that has .Net installed. And if your install msi has a module to do the .Net install for whichever CLR version your app requires, then that will install the InstallUtil for you...
It should be ok, is it not part of the .net framework redistributable which is free? you can always just copy it from the framework folder before calling it, assuming the framework is always in the same place?

Categories

Resources