deephaven / deephaven-core

Deephaven Community Core
Other
257 stars 80 forks source link

feat(csharp): A Windows Installer for the Deephaven Excel Add-In #6378

Closed kosak closed 1 day ago

kosak commented 6 days ago

This PR contains a few related items:

  1. The Advanced Installer project file (csharp/ExcelAddInInstaller/ExcelAddInInstaller.aip). This is not expected to be human-readable
  2. Config changes to the ExcelAddIn project to make it only build a 64 bit version of the Excel Add-In (also to change its name)
  3. Code in C# to add "Custom Actions" to our Advanced Installer project. The purpose of this is to let us edit the Windows Registry in a nice way in order to add our add-in to the list of Excel Add-ins (or to remove it)
  4. Please note MsiSession.cs is boilerplate code provided by Advanced Installer. I didn't write it and we (probably) shouldn't touch it
  5. TestCustomActions, a tiny amount of C# code used to manually (!) test the registry manipulation library to see if it's doing the right thing.
  6. deephaven.cer, the public key part of our signing key. Advanced Installer puts this key into the Local User's "Trusted Publishers" list, if the user opts to do so.

You may also want to review m Confluence writeup: https://deephaven.atlassian.net/wiki/spaces/ED/pages/152862817/Creating+a+Windows+MSI+Installer+for+the+Deephaven+Excel+Add-In+2nd+gen