Каков наилучший способ в С# определить, запускает ли программатор программу через IDE или ее пользователя?

Каков наилучший способ в С# определить, запускает ли программатор программу через IDE или ее пользователя?

Ответ 1

if (System.Diagnostics.Debugger.IsAttached) {
    // You are debugging
}

Ответ 2

public static bool IsInVisualStudio
{
    get
    {
        bool inIDE = false;
        string[] args = System.Environment.GetCommandLineArgs();
        if (args != null && args.Length > 0)
        {
            string prgName = args[0].ToUpper();
            inIDE = prgName.EndsWith("VSHOST.EXE");
        }
        return inIDE;
    }
}