Both, I believe, check for .Net Framework installation. While writing wix xml do we need to have both, if yes why
You do not need both, NETFRAMEWORK40FULL will suffice.
DIRCA_CheckFX is the custom action used in Visual Studio setup projects to detect the NET Framework. If you have in fact migrated from VS to WiX you no longer need it.
Related
We are currently using WiX with the standard bootstrapper application. In the past this has worked well for our needs, however now we would like to add some additional functionality, such as validation of database details entered in the bootstrapper UI.
I know that this would be possible by modifying the standard bootstrapper application, however this requires coding in C which I would like to avoid. (I can write in C, but I'm far more competent and less error prone in .Net)
Is there a .Net port of the standard bootstrapper application so that we can implement these actions in .Net code, or would I need to write a .Net bootstrapper from scratch?
No, WixStandardBootstrapperApplication is only available in native code. The BA for WiX itself is open source like the rest of WiX: https://github.com/wixtoolset/wix3/tree/develop/src/Setup/WixBA
I am currently making an Outlook addin in Visual Studio 2012,
i create an Installer for my project, but in order for my addin to work on my clients computers i also need to add the SharePoint Foundation (http://www.microsoft.com/en-us/download/details.aspx?id=21786) dll’s,
but when I try to add them from my C:\Windows\assembly folder to the WiX msi base installer Project\References - (by right clicking and pressing add Reference), I get the following error “A reference to [filepath] could not be added. Please make sure that the file is accessible, and that it is a valid WiX reference.“
Do you know what I can do ?
thanks a lot for your help!
You need to add the files to Product.wxs - see http://wix.sourceforge.net/manual-wix3/wix_learning.htm . You only add .wixlib and other projects via references.
Another approach would be to use a WiX 3.7 Bootstrapper project. The bootstrapper engine is often called "Burn" so you might see that in discussions.
A bootstrapper project allows you to install dependencies using their own installers, such as the "SharePoint Foundation 2010 Client Object Model Redistributable" you linked to. A nice example of a bootstrapper is the WiX 3.7 installer itself but most projects can be much simpler.
Installing dependencies using vendor provided installers has the advantage of avoiding having to re-implement any necessary logic yourself and allows them to managed and upgraded by the user.
I'm usually in WIX-land instead of InstallShield.
What's the equivalent of NETFRAMEWORK40FULL in InstallShield? Is there a better way to check for .NET 4.0 from InstallShield 2012?
Please note: I am not interested in installing it from the installer. Just a simple test to inform the user they need to install .NET 4.0 before continuing.
EDIT:
I could use a bootstrapper, but would rather not if there's a native InstallShield way of doing this.
I haven't done much on InstallShield. I hope this may address you query.
I'm looking for a tool (preferably not InstallShield, and also preferably cheap/Free) that supports Chained MSI Installations. I've got several small installations that need to be able to be deployed separately, but also as one group, and I'd like to not have to maintain multiple installers.
It looks like I need Windows Installer 4.5 to do this properly, but I can't seem to find to much info when I'm looking around for what version of Installer is supported.
The MSI 4.5 functionality is just a set of APIs that allow bootstrapper/chainers to do smarter things for multiple MSIs. You still need a bootstrapper/chainer to install multiple packages. In WiX v3.6 there will Burn.
Incidentally, it used to be possible--although not particularly easy--to "nest" or embed other MSIs into one parent, but it involved tweaking custom actions and such to ensure that the nested programs were removed upon removal of the parent, etc. Sadly, this feature is "deprecated" and thus no longer recommended by Microsoft. Here's how to do it in a Visual Studio installer project... but creating a bootstrapper with WiX would be more advised.
What you need is a bootstrapper. Using and InstallShield or Wix will created an MSI themselves which when that is running will not allow the other smaller MSIs to run. If you already have the smaller MSIs to run a bootstrapper is all you need.
MSDN has a free one you can download that plugs into VS2008 and uses MSBuild to compile. What you will probably need to do is create packages for your MSIs and put them in the bootstrapper as prerequisites. This will allow you to set it up to run them in a particular order.
Here is the MSDN link: MSDN Bootstrapper Manifest Generator
Look at NSIS
I have created an MSI installer for a .NET 3.5 application written in Visual Studio Express 2008. The installer UI is localized (to danish) and looks fine. My problem is that errors, say a previous version is installed and needs to be removed first, the error dialog is in english. How do I localize error-dialogs too?
I'm not familiar with Visual Studio, but have you checked out http://www.tramontana.co.hu/wix/lesson2.php#2.3 - you need to ensure you specify the correct language and codepages in the Product and Package tags. You might need to edit the source wxs file if VS doesn't provide a GUI for this.