我有以下脚本来获取远程计算机的服务状态并将其显示在网页上(我安装了 powershell v3.0):
<html !DOCTYPE>
<head>
</head>
<body>
<?php
$output = exec('powershell.exe "(Get-Service -computername server_name wudfsvc).Status"');
echo $output
?>
</body>
</html>
这有效,当我在本地检查服务状态(没有 -computername 参数)并且当我在命令行中运行此脚本时它有效。我认为,问题在于,当我在 php 中运行它时,它没有足够的权限来获取远程计算机上的服务状态。我尝试使用“Get-WMIObject -class win32_service”而不是 Get-Service,但我只发现这个示例只提供没有密码的登录:
Get-WmiObject Win32_Service -Credential FABRIKAM\administrator Computer Fabrikam
我需要在没有用户交互的情况下自动获取远程计算机上的服务状态。可能吗?
谢谢!