特定进程的远程处理器/内存使用情况

我正在做一个项目来获取CPU使用率%,以及特定进程的RAM使用率(KB),大约为6。

我遇到了一个获取cpu%的很好的指南,它使用了以下代码:

# Option A: This is if you just have the name of the process; partial name OK
$ProcessName = "winlogon"

# Option B: This is for if you just have the PID; it will get the name for you
#$ProcessPID = "6860"

#$ProcessName = (Get-Process -Id $ProcessPID).Name

$CpuCores = (Get-WmiObject Win32_ComputerSystem).NumberOfLogicalProcessors
$Samples = (Get-Counter "Process($Processname*)% Processor Time").CounterSamples
$Samples | Select InstanceName,
    @{Name="CPU %";Expression={[Decimal]::Round(($_.CookedValue / $CpuCores), 2)}}

但是,我无法找到一种方法让它碰到远程机器。 我可以用它来列出本地进程,并且我已经尝试在Get-WmiObject添加-ComputerName开关和PC名称来Get-WmiObject远程处理器数量。 这会导致脚本在Select失败。 我也尝试用2对$CpuCores值进行硬编码,并对远程机器使用Get-Counter ,但我不确定如何格式化给定的具体示例。

我从头开始写这篇文章没有问题,但是我很难弄清楚如何获取特定进程的CPU或RAM使用情况。 最终目标是将结果显示在TextBox控件中,该控件可以通过Name,CPU%利用率和内存利用率进行读取。

我有GUI需要PC名称和结果文本框,但我无法开发逻辑甚至无法获取我需要的数据。 有什么想法吗? 我花了大约2天的时间来梳理互联网,并发现了许多CPU和内存使用方法,但没有任何方法可以粘在一起或远程使用。 我对PowerShell并不陌生,但这是令人困惑的。 任何帮助开发逻辑将不胜感激。

链接地址: http://www.djcxy.com/p/79825.html

上一篇: Remote Processor / Memory usage of Specific Process

下一篇: Measure CPU and RAM Usage of Child Process