一、启动一个exe
class Program
{
static void Main(string[] args)
{
string exePath = @"D:\测试\Test.exe";// 修改为你要运行的exe路径
StartProcess(exePath);
}
private static bool StartProcess(string exePath)
{
// 创建一个 ProcessStartInfo 对象来配置进程启动参数
ProcessStartInfo startInfo = new ProcessStartInfo
{
FileName = exePath, // 要启动的exe路径
Arguments = "", // 如果需要传递参数给exe,设置在这里
UseShellExecute = true, // 如果设置为true,可以启动系统关联的程序
CreateNoWindow = true // 如果设置为true,不显示控制台窗口
};
try
{
// 启动进程
Process.Start(startInfo);
Console.WriteLine("启动成功!");
return true;
}
catch (Exception ex)
{
Console.WriteLine($"错误: {ex.Message}");
return false;
}
}
}
二、终止一个exe
class Program
{
static void Main(string[] args)
{
string processName = "DBTest"; // 要关闭的进程名,不需要带扩展名,打开实际位置的【XXX.exe】,XXX就是这个进程名
CloseProcess(processName);
}
private static bool CloseProcess(string processName)
{
try
{
// 获取所有正在运行的进程
Process[] processes = Process.GetProcessesByName(processName);
// 如果找到了指定的进程,逐个关闭
foreach (var process in processes)
{
Console.WriteLine($"正在关闭进程: {process.ProcessName} (ID: {process.Id})");
process.Kill(); // 结束进程
Console.WriteLine("进程已关闭");
}
if (processes.Length == 0)
{
Console.WriteLine("未找到指定的进程");
}
return true;
}
catch (Exception ex)
{
Console.WriteLine($"错误: {ex.Message}");
return false;
}
}
}