Exemple #1
0
        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);
        }
Exemple #2
0
 public WMI(WMIOptions opts)
 {
     RunWMI(opts);
 }