Esempio n. 1
0
        private void setProc(IntPtr proc)
        {
            this.proc = proc;

            IntPtr         prevWindow = GetForegroundWindow();
            Process        prevProc   = ProcessExtensions.GetProcessByHandle(prevWindow);
            List <Process> parents    = ProcessExtensions.GetParentProcesses(prevProc.Handle);

            parents.Insert(0, prevProc);

            /* //Eh... skip this for a bit
             * SetForegroundWindow(proc);
             * GetForegroundWindow();
             *
             * for (int ix = 0; ix < parents.Count; ix++)
             * {
             *  Process parent = ProcessExtensions.GetProcessByHandle(parents[ix].MainWindowHandle);
             *  if(parent != null)
             *  {
             *      string title = parent.MainWindowTitle;
             *      SetForegroundWindow(parent.MainWindowHandle);
             *      IntPtr newFocus = GetForegroundWindow();
             *      if(newFocus == parent.MainWindowHandle)
             *      {
             *          break;
             *      }
             *  }
             * }
             */
        }