溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

C#多進(jìn)程創(chuàng)建與終止方法

發(fā)布時(shí)間:2024-09-13 16:02:32 來(lái)源:億速云 閱讀:78 作者:小樊 欄目:編程語(yǔ)言

在C#中,可以使用System.Diagnostics.Process類來(lái)創(chuàng)建和管理多個(gè)進(jìn)程。以下是創(chuàng)建和終止進(jìn)程的方法:

  1. 創(chuàng)建進(jìn)程:
using System.Diagnostics;

// 創(chuàng)建一個(gè)新的Process實(shí)例
Process process = new Process();

// 設(shè)置啟動(dòng)信息
process.StartInfo.FileName = "notepad.exe"; // 要運(yùn)行的程序路徑
process.StartInfo.Arguments = ""; // 傳遞給程序的參數(shù)
process.StartInfo.CreateNoWindow = true; // 不創(chuàng)建新窗口
process.StartInfo.UseShellExecute = false; // 不使用Shell執(zhí)行
process.StartInfo.RedirectStandardOutput = true; // 重定向標(biāo)準(zhǔn)輸出
process.StartInfo.RedirectStandardError = true; // 重定向錯(cuò)誤輸出

// 啟動(dòng)進(jìn)程
process.Start();
  1. 終止進(jìn)程:
// 終止進(jìn)程
process.Kill();

// 等待進(jìn)程退出
process.WaitForExit();
  1. 獲取當(dāng)前系統(tǒng)中所有運(yùn)行的進(jìn)程:
Process[] processes = Process.GetProcesses();
foreach (Process p in processes)
{
    Console.WriteLine($"Process Name: {p.ProcessName}, ID: {p.Id}");
}
  1. 根據(jù)進(jìn)程名終止進(jìn)程:
string processName = "notepad";
Process[] processes = Process.GetProcessesByName(processName);
foreach (Process p in processes)
{
    p.Kill();
    p.WaitForExit();
}

注意:在操作進(jìn)程時(shí),需要確保具有足夠的權(quán)限。部分進(jìn)程可能無(wú)法被終止或訪問(wèn)。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI