起動プロセスを監督する


原文:http://bbs.csdn.net/topics/390721596?page=1钾post-96908543
static void Main(string[] args)
        {
            ManagementScope scope = new System.Management.ManagementScope(@"\\.\root\CIMV2");
            WqlEventQuery query = new WqlEventQuery(
                "__InstanceCreationEvent",
            new TimeSpan(0, 0, 1),
            "TargetInstance isa \"Win32_Process\"");
            ManagementEventWatcher watcher = new ManagementEventWatcher(scope, query);
            watcher.EventArrived += (s, e) => {
                Console.WriteLine("Process {0} has been created.",
                    ((ManagementBaseObject)e.NewEvent.Properties["TargetInstance"].Value).Properties["Name"].Value.ToString());
            };
            watcher.Start();

            Console.ReadKey();
        }