.NET中进程的基本使用

进程

一个应用程序就是一个进程,而一个进程又是由多个线程组成的。
进程帮助我们在内存中分配应用程序执行所需要的的空间
我们可已通过进程来直接操作应用程序

1、输出所有进程

using System;
using System.Diagnostics; //Process 
using System.IO; //Path

namespace ConsoleApp3
{
    
    
    class Program
    {
    
    
        static void Main(string[] args)
        {
    
    
            Process[] pro = Process.GetProcesses();
            foreach (var item in pro)
            {
    
    
                //item.Kilee();
                Console.WriteLine(item.ProcessName);
            }
            Console.ReadKey();
        }
    }
}



2、打开系统工具

using System;
using System.Diagnostics; //Process 
using System.IO; //Path

namespace ConsoleApp3
{
    
    
    class Program
    {
    
    
        static void Main(string[] args)
        {
    
    
            Process.Start("notepad");   //  记事本
            Process.Start("mspaint");   //  画图
            //Process.Start("iexplore");    ie浏览器
            //Process.Start("iexplore","http://wwwbaidu.cpm");
            //Process.Start("calc");    计算器

            Console.ReadKey();
        }
    }
}



3、打开指定路径的文件

using System;
using System.Diagnostics; //Process 
using System.IO; //Path

namespace ConsoleApp3
{
    
    
    class Program
    {
    
    
        static void Main(string[] args)
        {
    
    
            ProcessStartInfo psi = new ProcessStartInfo(@"D:\天健\SQLTracker\sqldbmon.exe");
            Process pro = new Process();
            pro.StartInfo = psi;
            //pro.StartInfo.UseShellExecute = true;
            pro.Start();

            Console.ReadKey();
        }
    }
}



4、小练习 (打开指定文件)

using System;
using System.Diagnostics;  //Process  需引用
using System.IO;

namespace ConsoleApp2
{
    
    
    class Program
    {
    
    
        static void Main(string[] args)
        {
    
    
            Console.WriteLine("请输入要打开的文件所在的路径");
            string filePath = Console.ReadLine();
            Console.WriteLine("请输入要打开的文件名字");
            string fileName = Console.ReadLine();

            BaseFile bf = GetFile(filePath,fileName);
            if (bf!=null)
            {
    
    
                bf.OpenFile();
            }
            Console.ReadKey();
        }
        static BaseFile GetFile(string filePath, string fileName)
        {
    
    
            BaseFile bf = null;
            string strExtension = Path.GetExtension(fileName);
            switch (strExtension)
            {
    
    
                case ".txt":
                    bf = new TxtFile(filePath, fileName);
                    break;
                case ".avi":
                    bf = new AviFile(filePath, fileName);
                    break;
                case ".mp4":
                    bf = new MP4File(filePath, fileName);
                    break;
            }
            return bf;
        }
    }
    class BaseFile
    {
    
    
        //字段、属性、构造函数、函数、索引器
        private string _filePath;
        public string FilePath
        {
    
    
            get => _filePath;
            set => _filePath = value;
        }
        public string FileName {
    
     get; set; }
        public BaseFile()
        {
    
    
        }
        public BaseFile(string filePath, string fileName)
        {
    
    
            this.FileName = fileName;
            this.FilePath = filePath;
        }
        public void OpenFile()
        {
    
    
            ProcessStartInfo psi = new ProcessStartInfo(this.FilePath + "\\" + this.FileName);
            Process pro = new Process();
            pro.StartInfo = psi;
            pro.StartInfo.UseShellExecute = true;
            pro.Start();
        }
    }
    class TxtFile : BaseFile
    {
    
    
        public TxtFile(string filePath, string fileName) : base(filePath, fileName)
        {
    
    
        }
    }
    class MP4File : BaseFile
    {
    
    
        public MP4File(string filePath, string fileName) : base(filePath, fileName)
        {
    
    
        }
    }
    class AviFile : BaseFile
    {
    
    
        public AviFile(string filePath, string fileName) : base(filePath, fileName)
        {
    
    
        }
    }
}

猜你喜欢

转载自blog.csdn.net/qq_41525263/article/details/114629574