public static int RunWMI(WMIOptions opts) { CimSession session = CreateSession(opts.Host, opts.DCOM); ListBasicInfo(session); if (opts.HideToConsole) { HideToConsole = true; } if (opts.AsyncOnly) { Task t = Task.Run(() => GetRunningProcessesAsync(session, opts.Threads)); if (opts.Minutes > 0) { TimeSpan ts = TimeSpan.FromMilliseconds(opts.Minutes * 1000 * 60); if (!t.Wait(ts)) { Console.WriteLine("The timeout interval elapsed."); } } else { t.Wait(); } } else { Task t = Task.Run(() => GetRunningProcessesSync(session, opts.Threads)); if (opts.Minutes > 0) { TimeSpan ts = TimeSpan.FromMilliseconds(opts.Minutes * 1000 * 60); if (!t.Wait(ts)) { Console.WriteLine("The timeout interval elapsed."); } } else { t.Wait(); } } return(0); }
public WMI(WMIOptions opts) { RunWMI(opts); }