WMI와 PHP가있는 Windows 시스템에서 소수 프로세스의 소유자를 얻으려고합니다. 이 기사를 사용하여 다음 PHP 코드를 작성했습니다. https://www.sitepoint.com/php-wmi-dig-deep-windows-php/ 모든 인스턴스의 속성을 가져올 수 있지만 소유자가 필요합니다. 그리고 Win32_Process 클래스에 메소드 "GetOwner"가 있는데, 여기서 소유자 (및 도메인 또는 ReturnValue)를 가져와야한다는 것을 알고 있습니다. 또한 WMI Explorer 및 WMI 코드 생성기를 사용하여 구문이 작동하는 방식을 이해하려고했습니다.PHP WMI는 프로세스 소유자를 얻습니다.
이 코드는 로컬 컴퓨터의 모든 프로세스 소유자를 표시합니다.
이 거의 모든 프로세스에 대한 반환<?php
$pc = "localhost"; //IP of the PC to manage
$WbemLocator = new COM ("WbemScripting.SWbemLocator");
$WbemServices = $WbemLocator->ConnectServer($pc, 'root\\cimv2');
$WbemServices->Security_->ImpersonationLevel = 3;
$userlist = $WbemServices->ExecQuery ("Select * from Win32_Process");
foreach ($userlist as $u) {
$owner= $u->GetOwner; //how to get the owner or domain here?
var_dump($owner);
}
가 :
C : \ 사용자 \ MyUserName 에다 \ test_wmi.php : 22 : INT (0)
가 성공을 의미 여기 내 PHP 코드 같은 완료 여기에 설명 : https://msdn.microsoft.com/En-US/library/aa390460.aspx 끝에
, 나는 이런 식으로 뭔가를하고 싶어, VB에서 PHP와하지 만 : gallery.technet.microsoft.com/Monitor-Process-CPU-Pct-by-0f3a5a1c를 (죄송합니다. 두 개 이상의 링크를 게시 할 수 없습니다.)
누군가가 반환 코드가 아닌 소유자를 가져 오는 구문에 대해 알고 있습니까?
감사합니다. D
<?php
$pc = "localhost"; //IP of the PC to manage
$WbemLocator = new COM ("WbemScripting.SWbemLocator");
$WbemServices = $WbemLocator->ConnectServer($pc, 'root\\cimv2');
$WbemServices->Security_->ImpersonationLevel = 3;
$userlist = $WbemServices->ExecQuery ("Select * from Win32_Process");
foreach ($userlist as $u) {
$owner= $u->ExecMethod_('GetOwner')->User;
var_dump($owner);
}
: