반응형

* C# 사용자가 선택한 프로세스 죽이기 예제...

- WMI 를 사용하기 위해 참조 -> System.Management dll 을 추가 -> 소스 코드 using System.Management
  (WMI 는 현재 실행중인 프로세스 조회를 하기 위해)

 

Main

 

- 사용된 컨트롤: Button 2개, 리스트뷰 1개

 

전체 소스 코드

Form1.cs

 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

using System.Management;

namespace CSharp_KillProccesor
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
        	//현재 실행 중인 프로세스 조회...
            string strWMIQry4 = "Select Name, ProcessID, ExecutablePath, WorkingSetSize From Win32_Process";
            int iCount = 1;
            listView1.Items.Clear();

            ManagementObjectSearcher oWMI = new ManagementObjectSearcher(new SelectQuery(strWMIQry4));
            foreach (ManagementObject oItem in oWMI.Get())
            {
                try
                {
                    ListViewItem lvi = new ListViewItem();
                    lvi.Text = iCount.ToString();
                    lvi.SubItems.Add(oItem.GetPropertyValue("Name").ToString());

                    listView1.Items.Add(lvi);
                    iCount++;
                }
                catch (Exception)
                {
                }

            }

        }

        private void button2_Click(object sender, EventArgs e)
        {
            ListViewItem lvi = listView1.FocusedItem;
            //해당 프로세스 이름 가져 오기 (***.exe -> *** 로)
            string[] strTmp = lvi.SubItems[1].Text.Split('.');


            System.Diagnostics.Process[] pcProcess = System.Diagnostics.Process.GetProcessesByName(strTmp[0]);

            if (pcProcess.Length > 0)
            {
                pcProcess[0].Kill();
                MessageBox.Show("선택된 해당 프로세스를 종료 하였습니다.", "확 인", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);

                //New Search...
                button1_Click(null, null);
            }
            else
            {
                MessageBox.Show("선택된 해당 프로세스는 실행 되지 않았습니다.", "확 인", MessageBoxButtons.OK, MessageBoxIcon.Error );
            }

        }
    }
}

 

 

*예제 결과

 

 

 

https://kdsoft-zeros.tistory.com/132

 

[C#] [WMI] 현재 실행 중인 프로세스 조회 (Process Search)

* C# WMI 를 이용한 현재 실행 중인 프로세스 조회 (Process Search) - WMI 를 사용하기 위해 참조 -> System.Management dll 을 추가 -> 소스 코드 using System.Management 전체 소스 코드 Form1.cs using Syst..

kdsoft-zeros.tistory.com

 

https://kdsoft-zeros.tistory.com/188

 

[VBNET] 선택된 프로세스 죽이기 (Kill Process)

* VBNET 사용자가 선택한 프로세스 죽이기 예제... - WMI 를 사용하기 위해 참조 -> System.Management dll 을 추가 -> 소스 코드 Imports System.Management (WMI 는 현재 실행중인 프로세스 조회를 하기 위해)..

kdsoft-zeros.tistory.com

 

반응형

+ Recent posts