-
Notifications
You must be signed in to change notification settings - Fork 586
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Wrong version of MSBuild found if only Visual Studio 2022 is installed #2664
Labels
Comments
Welcome to the FAKE community! Thank you so much for creating your first issue and therefore improving the project! |
Nice catch. Maybe we should hardcoded the program file into each paths or we can write a small logic: pseudo code // wont work because visualStudioVersion can be none
let getProgramFilesPath visualStudioVersion =
if (float visualStudioVersion) < 17.0
then Environment.ProgramFilesX86
else Environment.ProgramFiles
let findOnVSPathsThenSystemPath =
let visualStudioVersion = Environment.environVarOrNone "VisualStudioVersion"
Environment.ProgramFiles
let vsVersionPaths =
let dict = toDict knownMSBuildEntries
defaultArg (visualStudioVersion |> Option.bind dict.TryFind) getAllKnownPaths
|> List.map (fun path -> (getProgramFilesPath visualStudioVersion) @@ path)
let vsWhereVersionPaths =
let orderedVersions = MSBuildExeFromVsWhere.getOrdered()
let all = orderedVersions |> List.collect (fun e -> e.Paths)
let dict = toDict orderedVersions
defaultArg (visualStudioVersion |> Option.bind dict.TryFind) all
let fullList = vsWhereVersionPaths @ vsVersionPaths |> List.distinct source: |
Thanks for reporting! |
@yazeedobaid I am willing to transform my pseudo code into something useful. |
@aloisdg thanks |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This code only looks in the
Program Files (x86)
folder for Visual Studio installations, but vs2022 installs inProgram Files
, so MSBuild provided with vs2022 will not be picked up byFake.DotNet.MSBuild
.FAKE/src/app/Fake.DotNet.MSBuild/MSBuild.fs
Lines 236 to 249 in e313c3b
The text was updated successfully, but these errors were encountered: