mirror of
https://github.com/godotengine/godot.git
synced 2024-12-09 10:09:20 +08:00
Mono: Improve MSBuildFinder logic on Windows
Support detecting both 32-bit and 64-bit installations of `vswhere.exe`.
This commit is contained in:
parent
7d6c5c90b5
commit
5dc3900727
@ -161,8 +161,21 @@ namespace GodotTools.Build
|
||||
|
||||
// Try to find 15.0 with vswhere
|
||||
|
||||
string vsWherePath = Environment.GetEnvironmentVariable(Internal.GodotIs32Bits() ? "ProgramFiles" : "ProgramFiles(x86)");
|
||||
vsWherePath += "\\Microsoft Visual Studio\\Installer\\vswhere.exe";
|
||||
var envNames = Internal.GodotIs32Bits() ? new[] { "ProgramFiles", "ProgramW6432" } : new[] { "ProgramFiles(x86)", "ProgramFiles" };
|
||||
|
||||
string vsWherePath = null;
|
||||
foreach (var envName in envNames)
|
||||
{
|
||||
vsWherePath = Environment.GetEnvironmentVariable(envName);
|
||||
if (!string.IsNullOrEmpty(vsWherePath))
|
||||
{
|
||||
vsWherePath += "\\Microsoft Visual Studio\\Installer\\vswhere.exe";
|
||||
if (File.Exists(vsWherePath))
|
||||
break;
|
||||
}
|
||||
|
||||
vsWherePath = null;
|
||||
}
|
||||
|
||||
var vsWhereArgs = new[] {"-latest", "-products", "*", "-requires", "Microsoft.Component.MSBuild"};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user