diff --git a/Source/Tools/Flax.Build/Projects/VisualStudio/VisualStudioInstance.cs b/Source/Tools/Flax.Build/Projects/VisualStudio/VisualStudioInstance.cs index 7c0b1b0f0..4c4250aab 100644 --- a/Source/Tools/Flax.Build/Projects/VisualStudio/VisualStudioInstance.cs +++ b/Source/Tools/Flax.Build/Projects/VisualStudio/VisualStudioInstance.cs @@ -48,6 +48,9 @@ namespace Flax.Build.Projects.VisualStudio private static bool FindFlaxVS(string path) { + if (!Directory.Exists(path)) + return false; + var files = Directory.GetFiles(path); for (int i = 0; i < files.Length; i++) { diff --git a/Source/Tools/Flax.Build/Projects/VisualStudioCode/VisualStudioCodeProjectGenerator.cs b/Source/Tools/Flax.Build/Projects/VisualStudioCode/VisualStudioCodeProjectGenerator.cs index b5b3f98a7..8a05a4068 100644 --- a/Source/Tools/Flax.Build/Projects/VisualStudioCode/VisualStudioCodeProjectGenerator.cs +++ b/Source/Tools/Flax.Build/Projects/VisualStudioCode/VisualStudioCodeProjectGenerator.cs @@ -305,9 +305,20 @@ namespace Flax.Build.Projects.VisualStudioCode } json.EndArray(); } + else + { + json.AddField("program", outputTargetFilePath); + } break; case TargetPlatform.Linux: - json.AddField("program", outputTargetFilePath); + if (configuration.Platform == TargetPlatform.Linux && (outputType != TargetOutputType.Executable || project.Name == "Flax") && configuration.Name.StartsWith("Editor.")) + { + json.AddField("program", Path.Combine(Globals.EngineRoot, "Binaries", "Editor", "Linux", configuration.ConfigurationName, "FlaxEditor")); + } + else + { + json.AddField("program", outputTargetFilePath); + } if (configuration.Platform == TargetPlatform.Linux) { json.AddField("MIMode", "gdb");