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