How do I detect if Microsoft Project is installed in my Wix installer package? - wix

I am migrating a VS 2010 Project Add-in to VS 2013. In the process, because they got rid of the built-in installer in 2013, I am changing my installation package to Wix. I have already done this for my Outlook add-in. In the Outlook add-in installation Bundle I used this block of code to check for Outlook prerequisites:
<util:ComponentSearch Id="SearchOutlook2010" Guid="CFF13DD8-6EF2-49EB-B265-E3BFC6501C1D" Variable="Outlook2010"/>
<util:ComponentSearch Id="SearchOutlook2010PIA" Guid="1D844339-3DAE-413E-BC13-62D6A52816B2" Variable="Outlook2010PIA"/>
<util:ComponentSearch Id="SearchOutlook2013" Guid="F9F828D5-9F0B-46F9-9E3E-9C59F3C5E136" Variable="Outlook2013"/>
<bal:Condition Message="This Setup need Outlook 2010 or 2013 to be installed">
Outlook2010 OR Outlook2010PIA OR Outlook2013
</bal:Condition>
This is working great so I'm trying to do the same thing for MS Project but I am having little luck finding the appropriate Component ID values to use to find Project 2010/2013. Will someone please help me?
Also, another question regarding the PIA. If "Outlook2010PIA" is true, should that be enough to continue? I copied this from an example elsewhere and found that odd.
Thanks!

Related

When is the VSTO-Runtime needed when using a VSTO-AddIn?

I have a VSTO-Add-In for Outlook and need the information when i have to provide the VSTO-Runtime with the installation of the Add-In.
I have already found this article describing the prerequisites but I could construct cases which do not fit this description:
The article says "If Office 2010 Service Pack 1 (version 14, build 6029) or any newer Office version is installed, Office will take care of configuring the VSTO runtime."
=> This is telling me I do not need to provide the VSTO-Runtime in this case.
In the case that I have installed Office 2010 and manually install the ServicePack 2 I have the buildversion 7015 in my Outlook which is a greater version than 6029.
My installer recognizes this and does not provide the VSTO-Runtime.
But on starting Outlook after the installation I get an error saying, the .vsto-file could not be read.
This error only disappears after installing the VSTO-Runtime. Then the AddIn works fine.
What are the real cases in which i need to provide the VSTO-Runtime?
if you're using windows installer, just add it as prerequisite, which will create a Setup.exe, and add it as Launch Condition in your installer to show an error message, that Setup.exe should be run, or just make the Setup.exe run always, it will launch your .msi
have a look here - I guess this is also valid for Office 2013 .. just use the right components IDs !

How can I install Office Interop Assemblies for VS2015 after a Win 10 clean install?

I have a Win10 clean install with VS2015 installed. I have Office 2010 for Home and Student. My VB.NET app's msi file was built in 2011 on a machine with Office 2000 installed, and it still works now to install my app in Win10. The installed app exports data to Excel and that still works.
Now I want to update the app with VS2015, but I get build errors, e.g.: Type 'Excel.Workbook' is not defined. I found out that I should load the Office Interop Assemblies.
I downloaded and ran o2010pia.msi, but nothing showed up in "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Visual Studio Tools for Office" where I think they should live. Possibly the installation code is not yet recognizing VS2015 as Visual Studio 14.0?
In searching for answers, I found references to "PIAs in the GAC" and "reference a local copy of the PIAs in your source control tree". But I don't know what these mean!
How can I fix this?
I also missing Microsoft.Office.Interop.Excel.dll after installing Win10.
I find it in
"C:\Windows\assembly\GAC_MSIL\Microsoft.Office.Interop.Excel\15.0.0.0__71e9bce111e9429c".
Maybe you can search it in C:\Windows\assembly.
I found a solution to my problem. I had spent days googling around for answers about missing PIAs and error messages about .NET 3.5 not found. I tried many suggested workarounds, but none worked for me. But...
Because I have ReSharper from JetBrains installed, I stumbled upon this from a left-click on my project folder which shows a context menu with this link: "Optimize References..."
So as an experiment, I clicked it. It ran and did whatever it does (besides reporting). I did nothing! Now my project builds, runs, and automates Office Excel just like it did before my Windows 10 and VS2015 upgrade.
Here's a reference: http://blog.jetbrains.com/dotnet/2012/01/03/optimizing-assembly-references-with-resharper-61/. Hope this helps somebody.
Just had the same issue after an upgrade from Windows 7 to 10. I resolved it by bringing up the references, writing down the path to the Microsoft.Office.Interopt.Excel.dll, removing the reference, re-adding it, then rebuilding the project.

Making vsto add-in installable

I´ve created several VSTO add-ins for Outlook/Word/Excel/PowerPoint.
When i build them & then start the accociated program, the add-ins are installed and work wonderful.
When I try to install the DLL manually, in "Options > Add-Ins > COM-Add-Ins:Go to... > Add..." and then select the DLL, the program tells me, that it is not a valid Add-In.
What is the problem here? Visual Studio 2010 can install them automatically.
Can someone help me?
Thanks!
The simplest way to make an installer for your add-ins is to use the "Publish" functionality. Right click your Add-in project and select publish. This will show a wizard with basic options. This will generate an EXE file and a series of other files that are needed to install in other machines.
A .net VSTO addin DLL is not a normal COM dll (for instance, it doesn't self register, it has no TLB embedded within it) so Word can't deal with it through that addin's dialog as far as I know. VSTO addin's have to be installed via an installer.

Is VSTO runtime installed with MS Office installation?

I want to build an add-in for Office applications using VSTO. I want to know if the VSTO runtime is installed along with the installation of MS Office 2007 or not. If Office installation does not install VSTO runtime then I will have to make my setups do that.
No, VSTO is not installed by default. Add it as a pre-requisite to ClickOnce or your setup project.

Problem installing VSTO4.0 addin on Outlook 2007

I have created an Outlook addin using VS2010 and VSTO 4.0.
On Windows7+Outlook 2010, the installation and and application behaves as expected.
On Vista+Outlook 2007 (fresh installed virtual machine), the installer complains that it does not recognize the .vsto file format.
Has anyone experienced this? When I previously created VSTO3.0 addins and used them on Outlook 2007 I had no problems with installation.
You need to install the VSTO 4.0 runtime (which comes pre-installed with 2010, but not with 2007). You can download it from Microsoft right here.
If you deploy using ClickOnce this runtime gets added to the prerequisites automatically.