请求的性能计数器不是一个自定义计数器,它必须被初始化为ReadOnly

每当我尝试debugging.NET Windows服务应用程序时,我都会在性能计数器上得到有关ReadOnly属性的重复错误。 这个应用程序可以在x86 windows vista或x86 windows 2003上正常工作。它只是在我的新的64位开发机器上停止工作。

我已经在pipe理员模式下在64位和32位命令行VCVARS.bat上运行相关的InstallUtil调用。 我没有错误设置类别和每个perf计数器 。 但是,无论我是否只将read_tcct设置为只读,我都会得到:

请求的性能计数器不是一个自定义计数器,它必须被初始化为ReadOnly。

UPDATE

我重新安装了32位版本的Windows 7的机器,奇怪我仍然得到这个错误。 唯一改变的是从Windows Vista Business迁移到Windows 7 Professional。 这响铃吗?

2 Solutions collect form web for “请求的性能计数器不是一个自定义计数器,它必须被初始化为ReadOnly”

这是由于性能计数器(或类别) 不存在 ,但带有可怕的错误消息。

看看这个柜台的perfmon,它应该在相关的机器上丢失。

我发现这种情况发生在.net性能指标有时(不知道为什么),但使用lodctr 1得到他们回来。 如果你指出你正在试图获得哪个性能计数器,我们可能会给你更多的帮助。

  1. 请注意,内联示例是.Net 1.1,因此针对不同的框架进行调整。

我遇到了这个问题的一个变种,而我可以在reflection器中看到.net性能计数器标签,它实际上没有计数器。

我不得不重新添加它们

lodctr /R cd C:\Windows\Inf\.NETFramework lodctr corperfmonsymbols.ini 
  • Telnet不被识别为内部或外部命令
  • 本地方法中的致命错误:JDWP没有传输初始化,jvmtiError = AGENT_ERROR_TRANSPORT_INIT(197)
  • 如何删除Windows 7上的Java程序的标题栏和任务栏图标?
  • 如何在Windows启动时以pipe理员身份自动运行程序?
  • 我如何find已经安装在我的机器上的cygwin版本
  • 如何从错误中释放localhost:listen EADDRINUSE
  • 检查Internet连接是否可用C#
  • 从快捷方式打开特定目录中的Powershell
  • 将32位COM DLL注册到64位Windows 7
  • Xap包装失败。 你调用的对象是空的
  • 程序启动时如何请求pipe理员权限?