В C#/VB
в Visual Studio 2010
, есть ли способ в коде, чтобы определить, работает ли программа в среде IDE или нет?Способ определения, выполняется ли в среде IDE или нет?
eg. If ProgramRunningInIDE Then MessageBox.Show exc.Message
В C#/VB
в Visual Studio 2010
, есть ли способ в коде, чтобы определить, работает ли программа в среде IDE или нет?Способ определения, выполняется ли в среде IDE или нет?
eg. If ProgramRunningInIDE Then MessageBox.Show exc.Message
Вы можете проверить, если отладчик прилагаются:
System.Diagnostics.Debugger.IsAttached
Это по существу делает то же самое.
Существует IsInDesignMode собственности, которую вы можете использовать. В некоторых случаях это не точно, поэтому, вы также можете проверить UsageMode.
public static bool IsRunningInIdeContext
{
get {
if (DesignerProperties.IsInDesignMode)
return true;
return LicenseManager.UsageMode == LicenseUsageMode.Designtime;
}
}
IsInDesignMode может использоваться элементом управления (в библиотеке), чтобы понять, размещен ли он в дизайнере (визуальная студия) или в запущенном приложении, но он не имеет никакого отношения к обнаружению, если приложение было запущено с помощью IDE или нет , IsInDesignMode вернет true только для элемента управления, который был инициализирован IDE, а не если приложение запущено с помощью IDE – Max
. Тогда проясните это в своем вопросе. Это в значительной степени то, что я понимаю, «программа в настоящее время работает в среде IDE». – fjdumont
@fjdumont Во время разработки ваша программа на самом деле не работает, не так ли? – mg30rg
Или просто просмотрите Связанный список в правой части этой страницы – Steve
Я считаю, что это полезно для '#if DEBUG'. – IAbstract
@IAbstract, не так, если вы работаете в конфигурации выпуска. – Morrison