Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ c+中的性能计数器+;无lodctr_C++_Windows_Performancecounter - Fatal编程技术网

C++ c+中的性能计数器+;无lodctr

C++ c+中的性能计数器+;无lodctr,c++,windows,performancecounter,C++,Windows,Performancecounter,我已经习惯了C#应用程序创建性能计数器的方式——只是实例化新的PerformanceCounter对象并使用它 我现在被迫使用非托管C(C++?),我对提供的API和示例的易用性非常不满意。我主要的痛苦是需要使用lodctr来加载清单。我找不到任何解决办法。有没有办法在没有显式加载清单的情况下使用性能计数器,就像我在C#中所做的那样?您想使用PDH(性能数据处理程序)库。 基本流程如下所示 // During startup call h = PdhOpenQuery() for each co

我已经习惯了C#应用程序创建性能计数器的方式——只是实例化新的
PerformanceCounter
对象并使用它

我现在被迫使用非托管C(C++?),我对提供的API和示例的易用性非常不满意。我主要的痛苦是需要使用lodctr来加载清单。我找不到任何解决办法。有没有办法在没有显式加载清单的情况下使用性能计数器,就像我在C#中所做的那样?

您想使用PDH(性能数据处理程序)库。 基本流程如下所示

// During startup call
h = PdhOpenQuery()
for each counter
   PdhAddCounter( h ... )

// When you want the data values call
PdhCollectQueryData( h )
for each counter
   PdhGetFormattedCounterValue()
您希望使用PDH(性能数据处理程序)库。 基本流程如下所示

// During startup call
h = PdhOpenQuery()
for each counter
   PdhAddCounter( h ... )

// When you want the data values call
PdhCollectQueryData( h )
for each counter
   PdhGetFormattedCounterValue()

我只找到了一些如何使用PDH读取计数器的示例,
PdhAddCounter
用于将现有计数器添加到查询中。有什么方法可以创建性能计数器吗?我从来没有创建过新的性能计数器,只访问过现有的性能计数器。我只找到了一些如何使用PDH读取计数器的示例,
PdhAddCounter
用于将已存在的计数器添加到查询中。有什么方法可以创建性能计数器吗?我从未创建过新的性能计数器,只访问过现有的性能计数器。。就我所知,除了使用lodctr,没有其他选择。请看一看。不确定它是否正是您所需要的,但这可能是一个好的开始。有趣的是,如果您使用的是新的CounterSet API:,Lodctr路线现在也是C#应用程序的方法。就我所知,除了使用lodctr,没有其他选择。请看一看。不确定这是否正是您所需要的,但这可能是一个良好的开端。有趣的是,如果您正在使用新的CounterSet API,Lodctr路线现在也是C#应用程序的方法: