Skip to content

Check if we need to install extra components #2868

@VaclavElias

Description

@VaclavElias

Release Type: GitHub source

Version: Any

Platform(s): Windows

Describe the bug
I can build Stride from source code but Visual Studio is still prompting this:

Based on your solution you might need to install extra components for a full development exprience.

To Reproduce
Steps to reproduce the behavior:
Probably only on clean installation

Expected behavior
If I have all components, I shouldn't be asked to install them.

Screenshots

Image

Log and callstacks
N/a

Additional context
Summary — what I found and where the Solution Explorer hint likely comes from
• .NET Framework 4.6 / 4.6.1 targeting packs
• File: sources/tools/Stride.PackageInstall/Stride.PackageInstall.csproj
• This project explicitly targets net461 (TargetFramework = net461) → Visual Studio will suggest installing the .NET Framework 4.6 / 4.6.1 targeting packs.
• .NET 6.0 runtime mention
• File: sources/engine/Stride.Assets/StridePackageUpgrader.cs (and other upgrader code)
• The upgrader contains literal strings and migration logic for "net6.0" / "net6.0-windows". Even if no csproj currently targets net6.0, VS scans solution files and may flag the presence of such references in source/upgrade scripts or templates.
• Windows 10 SDK (10.0.19041.0) and Universal Windows Platform
• File: sources/engine/Stride.Shaders.Compiler/Stride.Shaders.Compiler.csproj
• Reads WindowsSdkDir_10 from the registry and uses $(WindowsSdkDir_10)\Redist\D3D**\d3dcompiler_47.dll → Visual Studio will detect a dependency on the Windows 10 SDK / native redistributables.
• File: sources/engine/Stride.Assets/StrideConfig.cs
• Registers a UWP platform (TargetFramework = "uap10.0.16299") and calls IsVSComponentAvailableAnyVersion(UniversalWindowsPlatformComponents) → leads VS to suggest the UWP workload/component (Microsoft.VisualStudio.Component.UWP.Support).
• Native dependencies elsewhere (FFmpeg, native runtimes) also surface the SDK / CRT requirement (see Stride.Video.csproj and other projects packaging native runtimes).
• NuGet targets and build tasks
• Many projects reference Microsoft.Build / MSBuild locators and import Stride custom targets (e.g. Import Project="$(StrideSdkTargets)"), and some csproj add build***.targets to packaging (Stride.Graphics.csproj).
• samples/Tests imports Stride.NuGetResolver.Targets (samples/Tests/Stride.Samples.Tests.csproj) → Visual Studio notices NuGet build/tasks involvement and suggests installing the "NuGet targets and build tasks" component.
Representative files / lines
• sources/tools/Stride.PackageInstall/Stride.PackageInstall.csproj
• … net461 …
• sources/engine/Stride.Shaders.Compiler/Stride.Shaders.Compiler.csproj
• WindowsSdkDir_10 read from registry and StrideNativeLib Include="$(WindowsSdkDir_10)\Redist\D3D**\d3dcompiler_47.dll"
• sources/engine/Stride.Assets/StridePackageUpgrader.cs
• Strings & logic: "net6.0", "net6.0-windows"
• sources/engine/Stride.Assets/StrideConfig.cs
• UWP platform registration: TargetFramework = "uap10.0.16299", IsAvailable = IsVSComponentAvailableAnyVersion(UniversalWindowsPlatformComponents)
• Many projects import: Import Project="$(StrideSdkTargets)" and use Microsoft.Build / Microsoft.Build.Locator package references (these drive "NuGet targets and build tasks" hints)

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions