来宾Windows帐户上的WMI

时间:2013-09-17 05:21:06

标签: windows wmi

我在Delphi XE3上开发程序。程序应通过WMI读取硬件信息。我的代码:

var
  SWbemLocator1: ISWbemLocator;
  Service:  ISWbemServices;
  ...
begin
  CoInitialize(nil);  

  SWbemLocator1 := CoSWbemLocator.Create();  
  Service:= SWbemLocator1.ConnectServer('.', 'root\CIMV2', '', '', '', '', 0, nil);
  ...

它工作正常,但在来宾Windows帐户ConnectServer调用异常“拒绝访问”,它不起作用。管理员和用户帐户运行良好。在Windows Vista / 7上进行测试。

我该如何解决?

1 个答案:

答案 0 :(得分:2)

  

我该如何解决?

这个问题预先设定了某些东西被打破了。事实并非如此,这种行为是设计的。来宾帐户在允许的范围内受到很大限制。

如果您希望允许访客用户访问WMI,则需要修改访客用户的权限以授予其更多权力。你应该三思而后行。本文详细讨论了所需的WMI用户权限:http://community.zenoss.org/thread/12048