Php 处理带有消息SWbemLocator的未捕获异常“com_exception”时出错。描述:访问被拒绝
我正在连接到远程服务器以获取一些WMI信息Php 处理带有消息SWbemLocator的未捕获异常“com_exception”时出错。描述:访问被拒绝,php,com,wmi,Php,Com,Wmi,我正在连接到远程服务器以获取一些WMI信息 $wmiLocator = new COM('WbemScripting.SWbemLocator'); $obj = $wmiLocator->ConnectServer($host, 'root\cimv2', $user, $pass); $Printers = $obj->ExecQuery("Select * from Win32_Printer"); 用户名和密码由用户输入。现在,我想确保他在运行查询之前正确输入了凭据,
$wmiLocator = new COM('WbemScripting.SWbemLocator');
$obj = $wmiLocator->ConnectServer($host, 'root\cimv2', $user, $pass);
$Printers = $obj->ExecQuery("Select * from Win32_Printer");
用户名和密码由用户输入。现在,我想确保他在运行查询之前正确输入了凭据,因为我会收到以下错误消息:
致命错误:未捕获的异常“com_异常”包含消息
'来源:SWbemLocatorDescription:访问被拒绝。
'在test.php中
是否有人知道如何捕获此信息或如何事先检查访问权限
谢谢您需要添加额外的WMI代码进行身份验证,因为WMI需要额外的凭据。我不懂php,但如果你想从VBS翻译,我可以发布一个带有一些有用信息和链接的答案。更多的是在身份验证失败时捕捉错误。以上代码在信誉正常时起作用$wmiLocator=new COM'WbemScripting.SWbemLocator'$obj=$wmiLocator->ConnectServer$host,'root\cimv2',$user,$pass$打印机=$obj->ExecQuerySelect*从Win32_打印机;foreach$Printers as$wmi_Printer{$PortName=$wmi_Printer->PortName;echo$PortName//提供连接的打印机名称;}其中$user和$pass从表单提交。我将与错误捕获人员核实,是否找到解决方案?当主机不可用或没有响应时,我还需要捕获错误。