gpt4 book ai didi

.net - 由于 UI 自动化导致的 WPF 性能问题

转载 作者:行者123 更新时间:2023-12-03 14:42:30 26 4
gpt4 key购买 nike

我遇到了 this thread 中描述的问题.

dotTrace 告诉我“Stylus Input”是有罪的。
enter image description here

我试过the code发表者Ron ZChaim Zonnenberg ,但没有用。

Rash建议2个解决方法:

  • 仅当机器中运行任何自动化客户端(如屏幕阅读器、平板电脑中的 tabtip 等)时,才会触发自动化代码。因此,摆脱这种情况的一种方法是关闭任何这些自动化客户端应用程序。
  • 如果一个不可行,那么另一种选择是 UIElementHelper.InvalidateAutomationAncestors 仅当应用程序的自动化树稀疏(如果使用自定义窗口自动化对等禁用了建筑自动化树时发生)并且可视化树密集时才会花费更长的时间。所以另一个解决方案是禁用任何自定义自动化代码并允许 WPF 构建完整的自动化树。这也应该加快 UIElementHelper.InvalidateAutomationAncestors 的速度。

  • 但是如何关闭标签提示?我试图停止并禁用以下服务,但没有成功,tabtip.exe 仍在后台运行:
  • 平板电脑输入服务
  • 平板服务笔

  • Rash 说这个问题应该在 .NET 4.0 SP1 中解决。有人知道.NET 4.0 SP1 的发布日期吗?

    我正在使用 Visual Studio 2010、Windows 7 64 位、Wacom Graphire 4。

    谢谢

    更新 :

    要关闭 tabtip.exe,我只需要在禁用上述服务后重新启动 Windows。但仅此一项并不能解决我的问题。为了解决性能问题,我还必须禁用“Wacom Consumer Touch Service”。

    根据 this thread (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 Tablet 6.3.1w3
    降级到以前的版本后,一切都开始工作了:WacomTablet_6.3.3-4

    现在我们知道了问题的根源,我们开始寻找一种解决方法,以便能够仍然使用最新的驱动程序。
    所以它就在这里,而且它似乎不会影响 wacom 数位板的功能:
    - 转到控制面板。
    - 双击程序和功能
    - 单击左侧标题为打开或关闭 Windows 功能的链接
    - 加载时,取消选中“Tablet PC Optional Components”(在 Windows 7 中可能称为“Tablet PC Components”)。
    - 单击确定按钮。
    这可能需要您重新启动 Windows 机器。

    这对我们有用。

    玩得开心!

    关于.net - 由于 UI 自动化导致的 WPF 性能问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5716078/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com