UI自动化导致WPF性能问题

| 我遇到此线程中描述的问题。 dotTrace告诉我“手写笔输入”有罪。 我尝试了Ron Z和Chaim Zonnenberg发布的代码,但是没有用。 皮疹建议2解决方法: 仅当机器中正在运行任何自动化客户端(例如屏幕阅读器,Tablet pc中的Tabtip等)时,才会触发自动化代码。因此,摆脱这种情况的一种方法是关闭所有这些自动化客户端应用程序。 如果一个方法不可行,则只有当应用程序的自动化树稀疏(如果使用自定义窗口自动化对端禁用了构建自动化树的情况)并且视觉树密集时,UIElementHelper.InvalidateAutomationAncestors才会花费更长的时间。因此,另一个解决方案是禁用任何自定义自动化代码,并允许WPF构建完整的自动化树。这也应该加快UIElementHelper.InvalidateAutomationAncestors的速度。 但是如何关闭tabtip?我试图停止并禁用以下服务,但无法正常工作,tabtip.exe仍在后台运行: 平板电脑输入服务 TabletServicePen Rash表示应在.NET 4.0 SP1中解决此问题。谁知道.NET 4.0 SP1的发布日期? 我正在使用Visual Studio 2010,Windows 7 64bit,Wacom Graphire 4。 谢谢 更新: 要关闭tabtip.exe,我只需要在禁用上述服务后重新启动Windows。但这本身并不能解决我的问题。为了解决性能问题,我还必须禁用“ Wacom Consumer Touch Service”。 并根据此主题(2011年3月22日):
there is no published timeline for .NET Framework 4.0 sp1
已邀请:
我最近不得不在我们的项目上使用WPF工具来解决这个确切的问题。 发生崩溃的计算机正在运行.NET Framework 4.5。 当工具崩溃时,我们可以看到崩溃发生在.NET PresentationFramework UIAutomation中。 崩溃异常是:PresentationFramework.dll中出现了\\ System.ArgumentOutOfRangeException \\类型的首次机会异常->此时,该错误似乎出现在.NET Framework中 但是随后我们可以查看在UIAutomation调用中崩溃的堆栈,该堆栈将我们引向该线程,并认为该模块正在由Wacom服务触发。 在应用程序崩溃的计算机上运行的Wacom驱动程序为:Wacom平板电脑6.3.1w3 降级到以前的版本后,一切都开始工作:WacomTablet_6.3.3-4 现在我们知道了问题的根源,我们开始研究一种解决方法,使其仍然可以使用最新的驱动程序。 这样就可以了,而且很好的是,它似乎并未影响wacom平板电脑的功能: -转到控制面板。 -双击程序和功能 -单击左侧标题为“打开或关闭Windows功能”的链接 -加载后,取消选中“ Tablet PC可选组件”(在Windows 7中可能称为“ Tablet PC组件”)。 -点击确定按钮。 这可能需要您重新启动Windows计算机。 这对我们来说成功了。 玩得开心!

要回复问题请先登录注册