示例#1
0
        /// <summary>
        /// Resumes the process by iterating over its threads and resuming each thread.
        /// </summary>
        /// <see href="http://stackoverflow.com/questions/71257/suspend-process-in-c-sharp"/>
        public static void Resume(this Process process)
        {
            if (process.HasExited || process.ProcessName == String.Empty)
            {
                return;
            }

            foreach (var ptr in process.GetThreadPointers())
            {
                ThreadAPI.ResumeThread(ptr);
            }
        }
示例#2
0
 private static IntPtr ThreadPointer(ProcessThread processThread)
 {
     return(ThreadAPI.OpenThread(ThreadAccess.SUSPEND_RESUME, false, (uint)processThread.Id));
 }