zoukankan      html  css  js  c++  java
  • Process类的一些用法(转)

    System.Diagnostics.Process
    提供了开启进程、结束进程、获取系统进程的信息等方法。
    使用它应该可以实现windows任务管理器的功能。
    #MyProcess.cs
    using System;
    using System.Diagnostics;

    namespace MyProjects
    {
         public class MyProcess : System.IDisposable
         {
             int processID ;
             public MyProcess ( )
             {
                 Process p ;
                 p = new Process() ;
                 p.StartInfo = new ProcessStartInfo ( "notepad.exe" ) ;
                 p.Start ( ) ;
                 processID = p.Id ;
                 Console.WriteLine ( "ProcessID is: {0}" , processID ) ;
             }

             public void Dispose ( )
             {
                 // Dispose
                 Console.WriteLine ( "Disposed" ) ;
                 Process p = new Process ( ) ;
                 p = Process.GetProcessById ( this.processID ) ;
                 try
                 {
                     p.CloseMainWindow ( ) ;      //仅关闭主窗口
                     //p.Kill ( ) ;               //结束进程
                 }
                 catch ( ApplicationException ex )
                 {
                     throw ex ;
                 }
             }
         }
    }

    #Class1.cs
    using System;

    namespace MyProjects
    {
    public class Class1
    {
       public Class1()
       {
       }

       public static void Main ( string[] args )
       {
        using ( MyProcess myProcess = new MyProcess ( ) )
        {
                     Console.ReadLine ( ) ;
        }
       }
    }
    }
    打开一个notepad,程序结束时,将打开的notepad关闭。

    Kyle

  • 相关阅读:
    shell脚本while read line的使用
    shell 一次性赋值多个变量
    Docker Volume
    nginx反向代理与负载均衡
    lua中 table.getn(t) 、#t、 table.maxn(t) 这三个什么区别?
    pv绑定pvc
    使用brew services管理服务
    Kubernetes中强制删除Pod、namespace
    shell 中的${},##, %% , :- ,:+, ? 的使用
    petalinux中fsbl源码
  • 原文地址:https://www.cnblogs.com/lovewife/p/1428854.html
Copyright © 2011-2022 走看看