我安装了最新的Windows 7 SDK,其中包含WPF Performance Profiler.
启动我的应用程序时,Perforator会显示一些数据,但Visual Profiler不会显示任何内容.时间线移动但不收集数据......
小智 7
首先检查它是否可以使用一个小的空白WPF应用程序.如果它不能使用空白的WPF应用程序,那么可能已经提到了补丁(WPF 4的WPF性能分析工具的TimeZone补丁现在可用).
但是,在我的情况下,这不是问题.Visual Profiler有一个错误,如果它不喜欢主窗口标题栏中的某些字符,则会导致它不显示元素树.
通过几个小时的试验和错误,我能够找到它为什么不能在我们的应用程序上工作的根本原因,即使它会在一个空白的WPF应用程序上.原因是我们的应用程序在标题栏文本(商标)中有一个特殊字符.如果我们从主窗口标题中删除特殊字符,则在连接可视化分析器时元素树显示正常.通过在主窗口中放置以下属性,我能够在简单的空白WPF应用程序中重现此问题:
<Window ..... Title="Test Application™" >
Run Code Online (Sandbox Code Playgroud)
看起来像Visual Profiler中的一个错误,它以某种方式由特殊字符触发.我没有测试其他特殊字符,但可能不仅仅是这个.
因此,解决方法是在分析时删除特殊字符,直到他们解决此问题.