计算机出现运行时错误,计数器出问题

此错误是由于处理计数器列表时发生了一个竞争问题。当LoadPerf.dll读取了最后计数器的索引值的同时又有其他计数器被添加,于是新的计数器的索引值比最后计数器的索引值还大,因而LoadPerf.dll认为计数器数值不正确而记录下次事件日志。因为LoadPerf.dll在遇到此错误后会进行重试并成功读取新的计数器,所以这个错误在重试之后不会造成使用上的影响。

解决方法是在命令提示符下键入:lodctr /r,自动重建性能计数器字符串表

性能计数器信息保存在以下位置:

注册表:

HKEY_LOCAL_MACHINE/Software/Microsoft/Windows NT/Current Version/Perflib/009

系统文件夹中的2个文件:

%Systemroot%/System32/Perfc009.dat

%Systemroot%/System32/Perfh009.dat

重建计数器值步骤如下:

将系统安装盘中的两个文件:DriveLetter:/i386/perfc009.da_ DriveLetter:/i386/perfh009.da_ 分别展开成:Perfc009.dat Perfh009.dat (DriveLetter代表系统安装盘盘符),然后复制到系统文件夹%Systemroot%/System32/下,替换掉原来的2个文件。展开文件的命令格式为:expand perfc009.da_ Perfc009.dat

打开注册表编辑器,定位到:

HKEY_LOCAL_MACHINE/Software/Microsoft/Windows NT/CurrentVersion/Perflib项。

修改其中的2个子键值,LastCounter 改为十进制的1846LastHelp 改为十进制的1847

再定位到HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services项。

找到所有的performance子键,如果performance子键内含有以下键值,则删除:

FirstCounter

FirstHelpA

LastCounter

LastHelp

做完以上工作,接下来就是重新添加性能计数器值:

1. 打开一个命令提示符窗口。

2. 通过输入cd %Systemroot%/System32命令,转入到系统文件夹。

3. 通过findstr drivername *.ini命令,找到所有需要加载的驱动。

4. 记下查找到的ini文件列表

5. 然后对所有找到的ini文件通过lodctr inifile命令重新加载

6. 最后重新启动计算机

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
解决办法就是重新生成性能计数器库值,具体如下: 1)从Window XP 或 Windows 2003 光盘中提"PERFC009.DA_文件"PERFH009.DA_"文件,通常它们位于光盘的 \i386 目录中,然后进入cdm,键入下面的命令分别展开它们: expand perfc009.da_ expand perfh009.da_ 然后把展开来的 perfc009.dat 和 perfh009.dat 替换 windows\system32\ 下的同名文件。    展开方式如下:    2)启动注册表编辑器,然后在注册表中查找以下项: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Perflib 将"LastCounter"值更改为 1846(十进制),并将"LastHelp"值更改为 1847(十进制)。    3)继续找到以下注册表项 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services 如果存在 Performance 子项,则删除以下值: ? FirstCounter ? FirstHelp ? LastCounter ? LastHelp    4)打开cmd, 键入 cd %Systemroot%\System32 findstr drivername *.ini 然后按 Enter。 注意列表中每个驱动程序名称所对应的 .ini 文件名。 在命令提示符处,键入下面一行,然后按 Enter: lodctr inifile 其中,inifile 是对应您要重新加载的驱动程序的 .ini 文件名。 例如,如果打算重新加载 ASP 驱动程序,则第 4 步中出现的列表将显示 Axperf.ini 是用于 ASP 驱动程序的 .ini 文件 (axperf.ini:drivername=ASP)。因此,要重新加载 ASP 驱动程序,请在命令提示符处键入 lodctr axperf.ini,然后按 Enter。 下面我以 Windows XP 为例,把执行的步骤写上来,建一个bat文件,复制进去执行就可以了。 lodctr esentprf.ini lodctr mqperf.ini lodctr msdtcprf.ini lodctr perfci.ini lodctr perffilt.ini lodctr perfwci.ini lodctr pschdprf.ini lodctr rasctrs.ini lodctr rsvp.ini lodctr tslabels.ini pause    5)重新启动计算机。 最后还是cmd: cd \windows\system32 lodctr /R 注意:/R 是大写。 这时,已经可以看到性能计数器库值已完成了重新生成。   再来看看sql server 2008的安装,一切正常 细节和需要注意的地方,请参考微软支持(http://support.microsoft.com/kb/300956/zh-cn)   如果出现下面这种情况   退后两步,设置成 就行了   再回去看看 一切正常

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值