Use standard VS VSIXInstaller.exe - #192
Conversation
Jason Malinowski (jasonmalinowski)
left a comment
There was a problem hiding this comment.
Looks good; comments aren't issues that need to be resolved.
| internal static IEnumerable<Tuple<string, Version, ImmutableHashSet<string>, InstanceState>> EnumerateVisualStudioInstances() | ||
| internal static IEnumerable<Tuple<string, Version, ImmutableHashSet<string>, InstanceState, string>> EnumerateVisualStudioInstances() | ||
| { | ||
| foreach (var result in EnumerateVisualStudioInstancesInRegistry()) |
There was a problem hiding this comment.
Note that removing this code is probably explicitly killing support for anything not using our current installer. Given we moved to it in VS2017 and that's our oldest "still in support" VS...this is fine. But we can probably make a note to pull additional support at some point too.
| { | ||
| var vsExeFile = Path.Combine(installationPath, @"Common7\IDE\devenv.exe"); | ||
| var vsRegEditExeFile = Path.Combine(installationPath, @"Common7\IDE\VsRegEdit.exe"); | ||
| var vsixInstallerExeFile = Path.Combine(installationPath, @"Common7\IDE\VSIXInstaller.exe"); |
There was a problem hiding this comment.
Do we assert anywhere these files exist? Or I guess the Process.Start will hopefully throw in a useful way if they don't?
There was a problem hiding this comment.
yeah it throws a win32 cannot find file specified exception
|
looks like just the equalexception failures now
|
custom vsix installation seems to be breaking vsix install on dev18 (causing extensions to get disabled). switch to vsixinstaller.exe from VS as it should work in 17/18.