첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
728x90
반응형
728x170
using System.Diagnostics;

#region 단일 프로세스 여부 구하기 - IsSingleProcess(process)

/// <summary>
/// 단일 프로세스 여부 구하기
/// </summary>
/// <param name="process">프로세스</param>
/// <returns>단일 프로세스 여부</returns>
/// <remarks>동일한 이름의 프로세스가 1개만 존재하는지 여부를 조사한다.</remarks>
public bool IsSingleProcess(Process process)
{
    var vshostIdentifier = ".vshost";

    var processID   = process.Id;
    var processName = process.ProcessName.Replace(vshostIdentifier, string.Empty);

    var targetProcessArray = Process.GetProcessesByName(processName);

    foreach(Process targetProcess in targetProcessArray)
    {
        int    targetProcessID   = targetProcess.Id;
        string targetProcessName = targetProcess.ProcessName.Replace(vshostIdentifier, string.Empty);

        if(targetProcessID != processID && targetProcessName == processName)
        {
            return false;
        }
    }

    return true;
}

#endregion
728x90
반응형
그리드형(광고전용)
Posted by icodebroker

댓글을 달아 주세요