using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Runtime.InteropServices;
using System.Security;
using System.Text;
using System.Threading.Tasks;
using static FreeSql.Internal.GlobalFilter;
using static System.Net.Mime.MediaTypeNames;
using static System.Runtime.InteropServices.JavaScript.JSType;
namespace FreeSqlMysql
{
public class ProcessUtility
{
/// <summary>
/// 执行bat
/// </summary>
/// <param name="workpath">工作目录:D:\tooltest\file\</param>
/// <param name="batfile">执行文件全名称 D:\tooltest\file\XXXX .bat 此文件注意空格 是个坑</param>
public static void RunBat(string workpath, string batfile)
{
Process proc = null;
try
{
string
targetDir = string.Format(workpath);//this is where mybatch.bat
proc = new Process();
proc.StartInfo.WorkingDirectory = targetDir;
proc.StartInfo.FileName = batfile;
//proc.StartInfo.Arguments = string.Format("10");//this is argument
// proc.StartInfo.Verb = "runas";//不要启动管理员运行。设置该启动动作,会以管理员权限运行进程
proc.StartInfo.CreateNoWindow = false;
proc.Start();
proc.WaitForExit();
}
catch (Exception ex)
{
Console.WriteLine("Exception Occurred :{0},{1}",ex.Message, ex.StackTrace.ToString());
}
}
/// <summary>
/// 杀进程
/// </summary>
/// <returns></returns>
public static bool KillProcess(List<string> listpro)
{
foreach (var item in listpro)
{
System.Diagnostics.Process[] process = System.Diagnostics.Process.GetProcessesByName(item);
foreach (System.Diagnostics.Process p in process)
{
p.Kill();
}
}
return true;
}
}
}
杀进程以及启动bat
最新推荐文章于 2024-07-23 10:58:41 发布