I have a .NET application which runs WMI queries on all domain computers in order to find the logged in user; it pings each computer to find whether it is online or not, the
Try co.Timeout = new TimeSpan(0, 0, 30);
The ManagementObjectSearcher has an Options property: one of the available options is Timeout, of type TimeSpan
:
Gets or sets the time-out to apply to the operation. Note that for operations that return collections, this time-out applies to the enumeration through the resulting collection, not the operation itself (the ReturnImmediately property is used for the latter). This property is used to indicate that the operation should be performed semi-synchronously.