프로세스 실행여부를 확인하고, 해당 프로세스의 핸들을 가져오는 예제입니다. 테스트는 간단하게 이름이 "메모장"인 것을 조회하도록 하였습니다.
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()
메서드를 사용하여 현재 실행 중인 모든 프로세스를 가져옵니다.LINQ
의FirstOrDefault
메서드를 사용하여 메인 창의 제목(MainWindowTitle
)에 "메모장"을 포함하는 첫 번째 프로세스를 찾습니다.- 만약 해당 프로세스가 없으면, 메시지 박스를 통해 "메모장 프로세스가 없습니다."를 표시합니다.
- 해당 프로세스가 존재하면, 프로세스의 핸들(
process.Handle
)을 메시지 박스를 통해 표시합니다.
이 예제는 특정 프로세스가 실행 중인지 확인하고, 해당 프로세스의 핸들을 얻는 데 사용할 수 있을 거예요.