我有一个运行PHP + Apache的Windows服务器
PHP脚本监视某些进程(我有一个PID列表),我可以使用几个Win32 API来找出它们的一些内容。
例如:
$obj = new COM('winmgmts://localhost/root/CIMV2');
$list = $obj->ExecQuery('Select * from Win32_Process');
foreach($list as $item){
echo $item->CommandLine,"\n";
}
某些进程侦听某些端口,我想知道哪个进程正在侦听哪个端口。
我已经搜索了一下并且读了GetExtendedTcpTable
和GetExtendedUdpTable
方法可以帮助我解决这个问题。我已经读过这些也是win32 API的一部分,但是,我不知道如何从PHP调用这些方法(或者甚至可以根本不用)。
我还阅读了netstat -a -b -n
,我可以使用exec
函数调用它,但我认为通过Win32 API提问它会比解析输出更清晰,更快命令行程序。