加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows – 在没有lodctr的情况下注册性能计数器

发布时间:2020-12-14 05:34:15 所属栏目:Windows 来源:网络整理
导读:我正在寻找一种方法来注册基于 XML的性能计数器,而无需使用lodctr可执行文件. 虽然this question和this question已经对问题有所了解,但没有一个能给出正确的解决方案. 函数 LoadPerfCounterTextStrings 似乎可以解决这个问题,但似乎没有将XML作为输入(即lodc
我正在寻找一种方法来注册基于 XML的性能计数器,而无需使用lodctr可执行文件.

虽然this question和this question已经对问题有所了解,但没有一个能给出正确的解决方案.

函数LoadPerfCounterTextStrings似乎可以解决这个问题,但似乎没有将XML作为输入(即lodctr命令的/ M参数).该函数无论如何都会调用lodctr命令,但会保存程序员以编程方式调用lodctr.exe.

是否有一种方法可以调用此函数(或任何其他函数),其行为如下:

lodctr.exe /M:xmlfile.xml

只是在Windows XP中可以使用LoadPerfCounterTextStrings的其他信息,但新API(perflib 2)仅在Vista之后可用.我正在使用V2.

解决方法

我认为这是不可能的,至少是有记录的方式.如果您发现并使用某种未记录的方式,它可能会破坏某些操作系统/服务包或未来版本的Windows.

最好的办法是在您的流程中调用LODCTR和UNLODCTR来安装/注册性能计数器.由于这些是命令行工具,它们可能会显示一个命令(黑色)控制台窗口.您可以使用管道隐藏输入/输出重定向,以便不显示控制台窗口.

请注意,这些工具不占用大量时间或资源,因此从您的流程调用这些EXE不会占用太多时间(用户不会注意到,甚至无法通过某些流程轻松搞清楚监测工具).

请注意,注册/取消注册PC是一项罕见的活动 – 因此Microsoft不会费心为您提供可用的可调用Windows API.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读