性能监视器不能从.NET数据提供程序添加计数器

我试图监视与性能监视器的数据库连接,但出于某种原因,我不能再添加计数器。

除了两个.NET数据提供程序(用于Oracle和SQL Server)以外,每个计数器组都可以正常工作。

这不是10分钟前,当它停止。 我试过重新启动盒子,这没有什么区别。

如何找出如何重新启用这些build议?

这是解决scheme:

打开cmd并运行这些命令:

regsvr32 /u netfxperf.dll regsvr32 netfxperf.dll 

注意:如果你正在运行探查器,并且先杀死IIS而不停止,那么你会遇到这个问题。

注意:接受的答案似乎不适用于Windows 7 x64。

看来在新的平台上,netfxperf.dll根本不是一个COM DLL。 因此,使用regsvr32是不行的。 这可以使用几种技术来validation – 检查registry,运行Dumpbin ,使用Dependency Walker等等。

对于我来说,重build我的性能计数器(lodctr / R)如上所述,并重新启动解决了这个问题。

我也有这个问题。 在尝试打开它们之后,Windows似乎在一定数量的故障发生后禁用了性能计数器。 我否认了这一点,从来没有问题再次删除registry项。

打开registry编辑器,在HKLM \ SYSTEM \ CurrentControlSet \ Services.NET数据提供程序下查找SqlServer \ Performance。 我不记得确切的关键名称(DisablePerformanceCounters?),但它的名字会跳出来,为什么它被禁用。 删除密钥。 我认为它会即时生效,但您可能需要重新启动。

我知道这听起来有点粗略,特别是因为我不记得关键的名字,但我知道我看到了这种行为,删除键修复了我。