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
Related
I created a setup project that has as required software .NET 4.5. Right now if I don't have installed .net 4.5 the installation will start with installing .net framework first. I would like to avoid this behavior and to receive directly an error message saying that I don't have installed .net version on my computer. Is that possible?
Thank you in advance.
Regards,
Vlad
It sounds like you have enabled the .NET 4.5 prerequisite. Prerequisites are designed to check the machine and conditionally install a redistributable before the main installation begins.
The flip side of this is a Launch Condition, at least in a basic MSI project. Use a System Search to detect whether .NET 4.5 is present (feel free to edit the .NET 4.5 prerequisite to get an idea what to look for, or just research it yourself), and add a Launch Condition with the message you want to show.
It's actually a really good idea to set up the Launch Condition even if you are including the prerequisite, just in case someone launches the .msi file without going through setup.exe's prerequisite checks. And for your case, where you don't want to offer the automatic installation, just stop including the prerequisite.
I want need for the Winforms application to be installed. For that I am setting Copy Local to true for MY referenced dlls. I build My project and copy all the files in /Bin/Release or /Bin/Debug (as my project settings).
But Problem is I have to installed on the client's machine is the appropriate .Net Framework version.
is there any option to Winforms application to be run on the client's machine without .Net Framework installation. So I can copy in USB Drive and run it any where,
The short answer is No.
However, as you can see from the Microsoft site, if you are using a Microsoft Windows Version that is still supported, you have very good chances of having a Framework Version 3.0 or 3.5 preinstalled and already available.
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.
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.
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.