如何为IWbemLocator :: ConnectServer设置超时?

时间:2013-07-19 19:05:53

标签: visual-c++ wmi

现在我按照此链接中提供的示例编写WMI查询实用程序: http://msdn.microsoft.com/en-us/library/windows/desktop/aa390422(v=vs.85).aspx

但我发现该程序可能会阻塞对IWbemLocator :: ConnectServer的调用。这是代码:

  hres = pLoc->ConnectServer(
    _bstr_t(L"\\\\COMPUTERNAME\\root\\cimv2"),
    _bstr_t(useToken?NULL:pszName),    // User name
    _bstr_t(useToken?NULL:pszPwd),     // User password
    NULL,                              // Locale             
    NULL,                              // Security flags
    _bstr_t(useNTLM?NULL:pszAuthority),// Authority        
    NULL,                              // Context object 
    &pSvc                              // IWbemServices proxy
    );

我的问题是如何在致电IWbemLocator::ConnectServer之前设置超时选项。

1 个答案:

答案 0 :(得分:1)

根据ConnectServer method description,将 lSecurityFlags 参数设置为WBEM_FLAG_CONNECT_USE_MAX_WAIT会强制执行2分钟超时。看起来虽然没有办法设置自定义超时。