-
Notifications
You must be signed in to change notification settings - Fork 101
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
C#/WinRT 1.4.1: Breaking change for projections #1051
Comments
For the Windows SDK projection, version 10.0.*.22 or later is required. For Project Reunion, version 0.8.6 Preview1 or later is required. The Windows App SDK has not yet been updated for this release. |
@Scottj1s Is this why I'm seeing this? The callstack refers to a piece of code that hits the Windows.* APIs |
@dotMorten it looks related, we had incremented the assembly version on the Windows SDK projection as part of the .NET SDK 6.0.201 update and your library when built with it has a dependency on it. But when it was consumed in an app using the .NET SDK 6.0.100 update, I would have expected a build time error when the references were resolved as we have a check for this in the .NET SDK that runs after ResolveAssemblyReferences. But that didn't seem to happen in this case and resulted in a runtime error. Is this binary dynamically loaded at runtime via some form of explicit call or is it a build time reference for the app? |
@manodasanW No not dynamically loaded at runtime. I saw no compiler warning or anything. Just this sudden crash. |
@manodasanW
It looks like the app never launches, but in the event viewer you'll see: Now run it again without the The biggest problem here is there's just no way in my nuget package to specify this dependency. |
C#/WinRT v1.4.1 includes AssemblyVersion changes in both the runtime and generated Windows SDK projection assemblies.
The AssemblyVersion changes are due to the fact that this version of C#/WinRT generates new helper methods for non-exclusive interfaces which are consumed by the generated code of a type implementing that interface. The impact of the AssemblyVersion changes is that components/C# projections built using this version of C#/WinRT and that implement interfaces from another C# projection (e.g., the Windows SDK or WinUI projection) will need an updated version of the dependent projection built using this version of C#/WinRT. Otherwise, you may see errors similar to the following:
Error CS0234: The type or namespace name 'IGraphicsEffectMethods' does not exist in the namespace 'ABI.Windows.Graphics.Effects' (are you missing an assembly reference?)
The text was updated successfully, but these errors were encountered: