Bowing to vast, popular demand (a comment on the blog), I’ve now put an installer for the ReadableExpressions Debugger Visualizers on the Visual Studio Gallery. Installation copies the Visualizers into whichever versions of Visual Studio (v10 to v15) are installed.
My first attempt used a VSIX, but had the following issues:
- It had to run a console application in an elevated process to be able to copy files into the Program Files directory
- The copying process happened when the extension was loaded - each extension you add is loaded at a certain point of the Visual Studio lifecycle - which really isn’t a good fit for the ‘copy some files to a directory once’ story
- I couldn’t find a way to have the Visualizer files removed when the extension was removed
…so I switched to using an MSI. This was a perfect fit for the install / uninstall actions, but by default didn’t show up in the Visual Studio Extension Manager. I found the answer to that here, and created an extension.vsixmanifest which the installer manually copies / removes from the appropriate place. As an aside, an extension won’t show up in the Extension Manager if its vsixmanifest file is saved as UTF-8. Why would that happen? Who can say. I’m just recording it here for posterity.