C# 메모장 등 프로세스 핸들 조회하는 방법 (Process.Handle)

프로세스 실행여부를 확인하고, 해당 프로세스의 핸들을 가져오는 예제입니다. 테스트는 간단하게 이름이 "메모장"인 것을 조회하도록 하였습니다.

private void BtnBeom_Click(object sender, RoutedEventArgs e)
{
    using (Process process = Process.GetProcesses().FirstOrDefault(x => x.MainWindowTitle.EndsWith("메모장")))
    {
        if (process == null)
            MessageBox.Show($"메모장 프로세스 is Null");
        else
            MessageBox.Show($"메모장 프로세스 핸들 : {process.Handle}");
    }
}

이 코드에 대한 간략한 설명입니다.

  • Process.GetProcesses() 메서드를 사용하여 현재 실행 중인 모든 프로세스를 가져옵니다.
  • LINQFirstOrDefault 메서드를 사용하여 메인 창의 제목(MainWindowTitle)에 "메모장"을 포함하는 첫 번째 프로세스를 찾습니다.
  • 만약 해당 프로세스가 없으면, 메시지 박스를 통해 "메모장 프로세스가 없습니다."를 표시합니다.
  • 해당 프로세스가 존재하면, 프로세스의 핸들(process.Handle)을 메시지 박스를 통해 표시합니다.

이 예제는 특정 프로세스가 실행 중인지 확인하고, 해당 프로세스의 핸들을 얻는 데 사용할 수 있을 거예요.

댓글 쓰기
가져가실 때, 출처 표시 부탁드려요! 감사합니다. 💗