From 15f2067bf637c9543e59a74c13199473678add80 Mon Sep 17 00:00:00 2001 From: Patrick Brunck Date: Mon, 29 Jan 2024 16:22:58 +0100 Subject: [PATCH] Final Fix for #324 see https://github.com/OData/ODataConnectedService/pull/372 --- src/Microsoft.OData.Cli/Program.cs | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/Microsoft.OData.Cli/Program.cs b/src/Microsoft.OData.Cli/Program.cs index 91a851c6..28940d9f 100644 --- a/src/Microsoft.OData.Cli/Program.cs +++ b/src/Microsoft.OData.Cli/Program.cs @@ -1,5 +1,4 @@ -using System; -using System.CommandLine; +using System.CommandLine; using System.IO; using System.Linq; using System.Threading.Tasks; @@ -24,14 +23,18 @@ static async Task Main(string[] args) /// private static void RegisterMsBuild() { + string pathToMsBuildExeInLatestVisualStudioVersion = string.Empty; const string defaultInstallDirOfVisualStudio = @"C:\Program Files\Microsoft Visual Studio\"; - var installDirOfLatestVisualStudio = Directory.GetDirectories(defaultInstallDirOfVisualStudio, "????", SearchOption.TopDirectoryOnly) - .Where(x => Path.GetFileName(x).All(char.IsDigit)) - .MaxBy(x => Path.GetFileName(x)); + if (Directory.Exists(defaultInstallDirOfVisualStudio)) + { + var installDirOfLatestVisualStudio = Directory.GetDirectories(defaultInstallDirOfVisualStudio, "????", SearchOption.TopDirectoryOnly) + .Where(x => Path.GetFileName(x).All(char.IsDigit)) + .MaxBy(x => Path.GetFileName(x)); - string pathToMsBuildExeInLatestVisualStudioVersion = Path.Combine( - Directory.GetDirectories(installDirOfLatestVisualStudio, "*", SearchOption.TopDirectoryOnly).FirstOrDefault() ?? string.Empty, - "MSBuild", "Current", "Bin", "MSBuild.exe"); + pathToMsBuildExeInLatestVisualStudioVersion = Path.Combine( + Directory.GetDirectories(installDirOfLatestVisualStudio, "*", SearchOption.TopDirectoryOnly).FirstOrDefault() ?? string.Empty, + "MSBuild", "Current", "Bin", "MSBuild.exe"); + } if (File.Exists(pathToMsBuildExeInLatestVisualStudioVersion)) { @@ -43,4 +46,4 @@ private static void RegisterMsBuild() } } } -} +} \ No newline at end of file