<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FC_Sharp_by_API%2FSystem.Diagnostics%2FProcess</id>
		<title>Csharp/C Sharp by API/System.Diagnostics/Process - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FC_Sharp_by_API%2FSystem.Diagnostics%2FProcess"/>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp_by_API/System.Diagnostics/Process&amp;action=history"/>
		<updated>2026-04-29T23:46:31Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/C_Sharp_by_API/System.Diagnostics/Process&amp;diff=5129&amp;oldid=prev</id>
		<title> в 15:31, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp_by_API/System.Diagnostics/Process&amp;diff=5129&amp;oldid=prev"/>
				<updated>2010-05-26T15:31:35Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 15:31, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/C_Sharp_by_API/System.Diagnostics/Process&amp;diff=5130&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp_by_API/System.Diagnostics/Process&amp;diff=5130&amp;oldid=prev"/>
				<updated>2010-05-26T12:13:56Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Process.CloseMainWindow==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Threading;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
    public static void Main()&lt;br /&gt;
    {&lt;br /&gt;
        using (Process process = Process.Start(&amp;quot;notepad.exe&amp;quot;, @&amp;quot;c:\SomeFile.txt&amp;quot;))&lt;br /&gt;
        {&lt;br /&gt;
            Console.WriteLine(&amp;quot;Waiting 5 seconds before terminating notepad.exe.&amp;quot;);&lt;br /&gt;
            Thread.Sleep(5000);&lt;br /&gt;
            Console.WriteLine(&amp;quot;Terminating Notepad with CloseMainWindow.&amp;quot;);&lt;br /&gt;
            if (!process.CloseMainWindow())&lt;br /&gt;
            {&lt;br /&gt;
                Console.WriteLine(&amp;quot;CloseMainWindow returned false - &amp;quot; + &amp;quot; terminating Notepad with Kill.&amp;quot;);&lt;br /&gt;
                process.Kill();&lt;br /&gt;
            }&lt;br /&gt;
            else&lt;br /&gt;
            {&lt;br /&gt;
                if (!process.WaitForExit(2000))&lt;br /&gt;
                {&lt;br /&gt;
                    Console.WriteLine(&amp;quot;CloseMainWindow failed to&amp;quot; + &amp;quot; terminate - terminating Notepad with Kill.&amp;quot;);&lt;br /&gt;
                    process.Kill();&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.Exited==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
public class DetectingProcessCompletion&lt;br /&gt;
{&lt;br /&gt;
    static void ProcessDone(object sender, EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
        Console.WriteLine(&amp;quot;Process Exited&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    public static void Main()&lt;br /&gt;
    {&lt;br /&gt;
        Process p = new Process();&lt;br /&gt;
        p.StartInfo.FileName = &amp;quot;notepad.exe&amp;quot;;&lt;br /&gt;
        p.StartInfo.Arguments = &amp;quot;process3.cs&amp;quot;;&lt;br /&gt;
        p.EnableRaisingEvents = true;&lt;br /&gt;
        p.Exited += new EventHandler(ProcessDone);&lt;br /&gt;
        p.Start();&lt;br /&gt;
        p.WaitForExit();&lt;br /&gt;
        Console.WriteLine(&amp;quot;Back from WaitForExit()&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.GetCurrentProcess()==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
using System.IO;&lt;br /&gt;
class TestPathApp {&lt;br /&gt;
    static void Main(string[] args) {&lt;br /&gt;
        Process p = Process.GetCurrentProcess();&lt;br /&gt;
        ProcessModule pm = p.MainModule;&lt;br /&gt;
        string s = pm.ModuleName;&lt;br /&gt;
        Console.WriteLine(Path.GetFullPath(s));&lt;br /&gt;
        Console.WriteLine(Path.GetFileName(s));&lt;br /&gt;
        Console.WriteLine(Path.GetFileNameWithoutExtension(s));&lt;br /&gt;
        Console.WriteLine(Path.GetDirectoryName(Directory.GetCurrentDirectory()));&lt;br /&gt;
        Console.WriteLine(Path.GetPathRoot(Directory.GetCurrentDirectory()));&lt;br /&gt;
        Console.WriteLine(Path.GetTempPath());&lt;br /&gt;
        Console.WriteLine(Path.GetTempFileName());&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.GetProcessById==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
  public static void EnumThreadsForPid(int pID)&lt;br /&gt;
  {&lt;br /&gt;
    Process theProc;&lt;br /&gt;
    try {&lt;br /&gt;
      theProc = Process.GetProcessById(pID);&lt;br /&gt;
    } catch {&lt;br /&gt;
      Console.WriteLine(&amp;quot;-&amp;gt; Sorry...bad PID!&amp;quot;);&lt;br /&gt;
      return;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    Console.WriteLine(&amp;quot;Here are the thread IDs for: {0}&amp;quot;, theProc.ProcessName);&lt;br /&gt;
    ProcessThreadCollection theThreads = theProc.Threads;&lt;br /&gt;
    foreach(ProcessThread pt in theThreads)&lt;br /&gt;
    {&lt;br /&gt;
      string info = string.Format(&amp;quot;-&amp;gt; Thread ID: {0}\tStart Time {1}\tPriority {2}&amp;quot;, pt.Id , pt.StartTime.ToShortTimeString(), pt.PriorityLevel);&lt;br /&gt;
      Console.WriteLine(info);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  static void Main(string[] args)&lt;br /&gt;
  {&lt;br /&gt;
    int theProcID = 10001;&lt;br /&gt;
    EnumThreadsForPid(theProcID);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.Kill()==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
  static void Main(string[] args)&lt;br /&gt;
  {&lt;br /&gt;
    Console.Write(&amp;quot;--&amp;gt; Hit a key to launch IE&amp;quot;);&lt;br /&gt;
    Console.ReadLine();&lt;br /&gt;
    // Launch IE.&lt;br /&gt;
    Process ieProc = Process.Start(&amp;quot;IExplore.exe&amp;quot;, &amp;quot;www.nfex.ru&amp;quot;);&lt;br /&gt;
    Console.Write(&amp;quot;--&amp;gt; Hit a key to kill {0}...&amp;quot;, ieProc.ProcessName);&lt;br /&gt;
    Console.ReadLine();&lt;br /&gt;
    try&lt;br /&gt;
    {&lt;br /&gt;
      ieProc.Kill();&lt;br /&gt;
    }&lt;br /&gt;
    catch{} // In case user already killed it...&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.Modules==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
  public static void EnumModsForPid(int pID)&lt;br /&gt;
  {&lt;br /&gt;
    Process theProc;&lt;br /&gt;
    try {&lt;br /&gt;
        theProc = Process.GetProcessById(pID);&lt;br /&gt;
      } catch {&lt;br /&gt;
      Console.WriteLine(&amp;quot;-&amp;gt; Sorry...bad PID!&amp;quot;);&lt;br /&gt;
      return;&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    Console.WriteLine(&amp;quot;Here are the loaded modules for: {0}&amp;quot;, theProc.ProcessName);&lt;br /&gt;
    try&lt;br /&gt;
    {&lt;br /&gt;
      ProcessModuleCollection theMods = theProc.Modules;&lt;br /&gt;
      foreach(ProcessModule pm in theMods)&lt;br /&gt;
      {&lt;br /&gt;
        string info = string.Format(&amp;quot;-&amp;gt; Mod Name: {0}&amp;quot;, pm.ModuleName);&lt;br /&gt;
        Console.WriteLine(info);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    catch{Console.WriteLine(&amp;quot;No mods!&amp;quot;);}&lt;br /&gt;
  }&lt;br /&gt;
  static void Main(string[] args)&lt;br /&gt;
  {&lt;br /&gt;
    int theProcID = 10001;&lt;br /&gt;
    EnumModsForPid(theProcID);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.PeakWorkingSet64==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
using System.IO;&lt;br /&gt;
using System.Reflection;&lt;br /&gt;
using System.Runtime;&lt;br /&gt;
using System.Runtime.rupilerServices;&lt;br /&gt;
using System.Security;&lt;br /&gt;
public class MainClass&lt;br /&gt;
{&lt;br /&gt;
    public static void Main()&lt;br /&gt;
    {&lt;br /&gt;
        Process[] allProcs = Process.GetProcesses(&amp;quot;RemoteMachineOnYourNerwork&amp;quot;);&lt;br /&gt;
        foreach (Process p in allProcs) &lt;br /&gt;
           Console.WriteLine(&amp;quot;  -&amp;gt; {0} - {1}&amp;quot;, p.ProcessName, p.PeakWorkingSet64);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.PrivateMemorySize==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
   public static void Main()&lt;br /&gt;
   {&lt;br /&gt;
      Process thisProc = Process.GetCurrentProcess();&lt;br /&gt;
      Console.WriteLine(&amp;quot;ProcessName:&amp;quot;+ thisProc.ProcessName);&lt;br /&gt;
      Console.WriteLine(&amp;quot;Process: {0}, ID: {1}&amp;quot;, thisProc.StartTime, thisProc.Id);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    CPU time: {0}&amp;quot;, thisProc.TotalProcessorTime);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    priority class: {0}  priority: {1}&amp;quot;, thisProc.PriorityClass, thisProc.BasePriority);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    virtual memory: {0}&amp;quot;, thisProc.VirtualMemorySize);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    private memory: {0}&amp;quot;, thisProc.PrivateMemorySize);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    physical memory: {0}&amp;quot;, thisProc.WorkingSet);&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.ProcessName==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
  static void Main(string[] args)&lt;br /&gt;
  {&lt;br /&gt;
    Process[] runningProcs = Process.GetProcesses(&amp;quot;.&amp;quot;);&lt;br /&gt;
    foreach(Process p in runningProcs)&lt;br /&gt;
    {&lt;br /&gt;
      string info = string.Format(&amp;quot;-&amp;gt; PID: {0}\tName: {1}&amp;quot;,p.Id, p.ProcessName);        &lt;br /&gt;
      Console.WriteLine(info);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.StandardOutput.ReadToEnd()==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
public class RedirectingProcessOutput&lt;br /&gt;
{&lt;br /&gt;
    public static void Main()&lt;br /&gt;
    {&lt;br /&gt;
        Process p = new Process();&lt;br /&gt;
        p.StartInfo.FileName = &amp;quot;cmd.exe&amp;quot;;&lt;br /&gt;
        p.StartInfo.Arguments = &amp;quot;/c dir *.cs&amp;quot;;&lt;br /&gt;
        p.StartInfo.UseShellExecute = false;&lt;br /&gt;
        p.StartInfo.RedirectStandardOutput = true;&lt;br /&gt;
        p.Start();&lt;br /&gt;
        &lt;br /&gt;
        string output = p.StandardOutput.ReadToEnd();&lt;br /&gt;
        &lt;br /&gt;
        Console.WriteLine(&amp;quot;Output:&amp;quot;);&lt;br /&gt;
        Console.WriteLine(output);    &lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.Start==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
using System; &lt;br /&gt;
using System.Diagnostics; &lt;br /&gt;
 &lt;br /&gt;
class MainClass {  &lt;br /&gt;
  public static void Main() {  &lt;br /&gt;
    Process newProc = Process.Start(&amp;quot;wordpad.exe&amp;quot;); &lt;br /&gt;
 &lt;br /&gt;
    Console.WriteLine(&amp;quot;New process started.&amp;quot;); &lt;br /&gt;
 &lt;br /&gt;
    newProc.WaitForExit(); &lt;br /&gt;
 &lt;br /&gt;
    newProc.Close(); // free resources &lt;br /&gt;
 &lt;br /&gt;
    Console.WriteLine(&amp;quot;New process ended.&amp;quot;); &lt;br /&gt;
  }  &lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.Threads==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
   public static void Main()&lt;br /&gt;
   {&lt;br /&gt;
      Process thisProc = Process.GetCurrentProcess();&lt;br /&gt;
      ProcessThreadCollection myThreads = thisProc.Threads;&lt;br /&gt;
      foreach(ProcessThread pt in myThreads)&lt;br /&gt;
      {&lt;br /&gt;
         Console.WriteLine(&amp;quot;thread:  {0}&amp;quot;, pt.Id);&lt;br /&gt;
         Console.WriteLine(&amp;quot;    started: {0}&amp;quot;, pt.StartTime);&lt;br /&gt;
         Console.WriteLine(&amp;quot;    CPU time: {0}&amp;quot;, pt.TotalProcessorTime);&lt;br /&gt;
         Console.WriteLine(&amp;quot;    priority: {0}&amp;quot;, pt.BasePriority);&lt;br /&gt;
         Console.WriteLine(&amp;quot;    thread state: {0}&amp;quot;, pt.ThreadState); &lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.TotalProcessorTime==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
public class GetProc&lt;br /&gt;
{&lt;br /&gt;
   public static void Main()&lt;br /&gt;
   {&lt;br /&gt;
      Process thisProc = Process.GetCurrentProcess();&lt;br /&gt;
      string procName = thisProc.ProcessName;&lt;br /&gt;
      DateTime started = thisProc.StartTime;&lt;br /&gt;
      int procID = thisProc.Id;&lt;br /&gt;
      int memory = thisProc.VirtualMemorySize;&lt;br /&gt;
      int priMemory = thisProc.PrivateMemorySize;&lt;br /&gt;
      int physMemory = thisProc.WorkingSet;&lt;br /&gt;
      int priority = thisProc.BasePriority;&lt;br /&gt;
      ProcessPriorityClass priClass = thisProc.PriorityClass;&lt;br /&gt;
      TimeSpan cpuTime = thisProc.TotalProcessorTime;&lt;br /&gt;
&lt;br /&gt;
      Console.WriteLine(&amp;quot;Process: {0}, ID: {1}&amp;quot;, procName, procID);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    started: {0}&amp;quot;, started.ToString());&lt;br /&gt;
      Console.WriteLine(&amp;quot;    CPU time: {0}&amp;quot;, cpuTime.ToString());&lt;br /&gt;
      Console.WriteLine(&amp;quot;    priority class: {0}  priority: {1}&amp;quot;, priClass, priority);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    virtual memory: {0}&amp;quot;, memory);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    private memory: {0}&amp;quot;, priMemory);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    physical memory: {0}&amp;quot;, physMemory);&lt;br /&gt;
      Console.WriteLine(&amp;quot;\n    trying to change priority...&amp;quot;);&lt;br /&gt;
      thisProc.PriorityClass = ProcessPriorityClass.High;&lt;br /&gt;
      priClass = thisProc.PriorityClass;&lt;br /&gt;
      Console.WriteLine(&amp;quot;    new priority class: {0}&amp;quot;, priClass);&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.VirtualMemorySize==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
   public static void Main()&lt;br /&gt;
   {&lt;br /&gt;
      Process thisProc = Process.GetCurrentProcess();&lt;br /&gt;
      Console.WriteLine(&amp;quot;ProcessName:&amp;quot;+ thisProc.ProcessName);&lt;br /&gt;
      Console.WriteLine(&amp;quot;Process: {0}, ID: {1}&amp;quot;, thisProc.StartTime, thisProc.Id);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    CPU time: {0}&amp;quot;, thisProc.TotalProcessorTime);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    priority class: {0}  priority: {1}&amp;quot;, thisProc.PriorityClass, thisProc.BasePriority);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    virtual memory: {0}&amp;quot;, thisProc.VirtualMemorySize);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    private memory: {0}&amp;quot;, thisProc.PrivateMemorySize);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    physical memory: {0}&amp;quot;, thisProc.WorkingSet);&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.WaitForExit==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Threading;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
    public static void Main()&lt;br /&gt;
    {&lt;br /&gt;
        using (Process process = Process.Start(&amp;quot;notepad.exe&amp;quot;, @&amp;quot;c:\SomeFile.txt&amp;quot;))&lt;br /&gt;
        {&lt;br /&gt;
            Console.WriteLine(&amp;quot;Waiting 5 seconds before terminating notepad.exe.&amp;quot;);&lt;br /&gt;
            Thread.Sleep(5000);&lt;br /&gt;
            Console.WriteLine(&amp;quot;Terminating Notepad with CloseMainWindow.&amp;quot;);&lt;br /&gt;
            if (!process.CloseMainWindow())&lt;br /&gt;
            {&lt;br /&gt;
                Console.WriteLine(&amp;quot;CloseMainWindow returned false - &amp;quot; + &amp;quot; terminating Notepad with Kill.&amp;quot;);&lt;br /&gt;
                process.Kill();&lt;br /&gt;
            }&lt;br /&gt;
            else&lt;br /&gt;
            {&lt;br /&gt;
                if (!process.WaitForExit(2000))&lt;br /&gt;
                {&lt;br /&gt;
                    Console.WriteLine(&amp;quot;CloseMainWindow failed to&amp;quot; + &amp;quot; terminate - terminating Notepad with Kill.&amp;quot;);&lt;br /&gt;
                    process.Kill();&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Process.WorkingSet==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
class MainClass&lt;br /&gt;
{&lt;br /&gt;
   public static void Main()&lt;br /&gt;
   {&lt;br /&gt;
      Process thisProc = Process.GetCurrentProcess();&lt;br /&gt;
      Console.WriteLine(&amp;quot;ProcessName:&amp;quot;+ thisProc.ProcessName);&lt;br /&gt;
      Console.WriteLine(&amp;quot;Process: {0}, ID: {1}&amp;quot;, thisProc.StartTime, thisProc.Id);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    CPU time: {0}&amp;quot;, thisProc.TotalProcessorTime);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    priority class: {0}  priority: {1}&amp;quot;, thisProc.PriorityClass, thisProc.BasePriority);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    virtual memory: {0}&amp;quot;, thisProc.VirtualMemorySize);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    private memory: {0}&amp;quot;, thisProc.PrivateMemorySize);&lt;br /&gt;
      Console.WriteLine(&amp;quot;    physical memory: {0}&amp;quot;, thisProc.WorkingSet);&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>