.NET Framework 3.5 客户端配置文件 - 缺少方法 System.Windows.Threading.Dispatcher.BeginInvoke(System.Delegate, System.Object[])

发布于 2024-11-19 14:18:57 字数 767 浏览 3 评论 0原文

我的应用程序面向 .NET Framework 3.5 客户端配置文件,并且我的设置配置为使用在线安装程序安装此框架,但有时(12000 个用户中有 3 个用户)应用程序会引发以下异常:

Method not found: 'System.Windows.Threading.DispatcherOperation System.Windows.Threading.Dispatcher.BeginInvoke(System.Delegate, System.Object[])'

我还收到来自 Visual Studio 的以下警告Studio 2010 代码分析工具:

警告 CA1903 : Microsoft.Portability : Member 'Settings.SearchForApplicationRelease_bgWorker(object, DoWorkEventArgs)' 使用成员 'Dispatcher.Invoke(Delegate, params object[])'。由于此成员是在.NETFramework 3.0 Service Pack 2 中引入的,该成员未包含在项目的目标 framework .NET Framework 3.5 中,因此您的应用程序可能无法在没有安装此服务包的系统。

我已在多个系统上尝试过,但无法重现此异常。
我该如何修复它?
用户是否有可能拥有损坏的 .NET Framework 版本?

谢谢, 科斯明

My application targets the .NET Framework 3.5 client profile and my setup is configured to install this framework using the online installer, but sometimes (at 3 users out of 12000) the application throws the following exception:

Method not found: 'System.Windows.Threading.DispatcherOperation System.Windows.Threading.Dispatcher.BeginInvoke(System.Delegate, System.Object[])'

I also receive the following warning from the Visual Studio 2010 Code Analysis tool:

Warning CA1903 : Microsoft.Portability : Member 'Settings.SearchForApplicationRelease_bgWorker(object, DoWorkEventArgs)' uses member 'Dispatcher.Invoke(Delegate, params object[])'. Because this member was introduced in.NETFramework 3.0 Service Pack 2, which was not included in the project's target framework, .NET Framework 3.5, your application may fail to run on systems without this service pack installed.

I have tried on several systems but I am not able to reproduce this exception.

How can I fix it?
Are there any chances that the users have a corrupt version of the .NET Framework?

Thanks,
Cosmin

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

要走干脆点 2024-11-26 14:18:57

Microsoft 文档指出此方法与 .NET 3.0 及更高版本兼容。然而,Micosoft .NET 3.5 sp(0) -> 不是 service pack 1<- 已损坏并且不支持任何 BeginInvoke 方法。 .NET 3.5 sp(0) 还存在其他问题,应将其删除。您必须强制更新到 .NET 3.5 sp(1) 才能使此方法发挥作用。

Microsoft documentation states this method is compatible with .NET 3.0 and up. However Micosoft .NET 3.5 sp(0) ->Not service pack 1<- is broken and does not support any BeginInvoke methods. There are other issues with .NET 3.5 sp(0) and it should be removed from existance. You will have to force the update to .NET 3.5 sp(1) for this method to work.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文