“CSharp .NET开发 DirectX 遇到 DataContextDeadlock 异常”的版本间的差异
(→上下文) |
|||
第19行: | 第19行: | ||
=== 解决方法 === | === 解决方法 === | ||
− | 总之,解决方法就是往App.config里标签configuration下startup标签中添加属性useLegacyV2RuntimeActivationPolicy并设置为true,如果已有该属性则仅需修改为true,大概就这样:<startup useLegacyV2RuntimeActivationPolicy="true"><ref>[ | + | 总之,解决方法就是往App.config里标签configuration下startup标签中添加属性useLegacyV2RuntimeActivationPolicy并设置为true,如果已有该属性则仅需修改为true,大概就这样:<startup useLegacyV2RuntimeActivationPolicy="true"><ref>[https://docs.microsoft.com/en-us/dotnet/framework/configure-apps/file-schema/startup/startup-element#uselegacyv2runtimeactivationpolicy-attribute <startup> element | Microsoft Docs]</ref>就好了。 |
如果之后还遇到LoaderLock,不用管它,这个只是调试程序的警告而已,直接继续运行就好,这个异常不会引起程序退出。 | 如果之后还遇到LoaderLock,不用管它,这个只是调试程序的警告而已,直接继续运行就好,这个异常不会引起程序退出。 | ||
== 引用 == | == 引用 == | ||
<references/> | <references/> |
2020年8月16日 (日) 20:13的版本
CSharp .NET开发 DirectX 遇到 DataContextDeadlock 异常
类似的问题
C# .NET DirectX DataContext Exception
上下文
(WikiMedia貌似不能在标题使用井号,所以我只好用CSharp这个词了)
我不知道有没有人遇到跟我一样的bug。但是这个东西真的不好搜索到正确的答案。完全被一大堆一模一样的无用解答刷屏了。
解释
主要原因是DirectX的库很老的了,所以可能就出现了一些.NET对旧版本支持问题。
解决方法
总之,解决方法就是往App.config里标签configuration下startup标签中添加属性useLegacyV2RuntimeActivationPolicy并设置为true,如果已有该属性则仅需修改为true,大概就这样:<startup useLegacyV2RuntimeActivationPolicy="true">[1]就好了。 如果之后还遇到LoaderLock,不用管它,这个只是调试程序的警告而已,直接继续运行就好,这个异常不会引起程序退出。