In C#/VB
in Visual Studio 2010
, c'è modo nel codice per determinare se il programma è attualmente in esecuzione nell'IDE o no?Modo per determinare se l'esecuzione in IDE o no?
eg. If ProgramRunningInIDE Then MessageBox.Show exc.Message
In C#/VB
in Visual Studio 2010
, c'è modo nel codice per determinare se il programma è attualmente in esecuzione nell'IDE o no?Modo per determinare se l'esecuzione in IDE o no?
eg. If ProgramRunningInIDE Then MessageBox.Show exc.Message
Si potrebbe verificare se il debugger è attaccato con:
System.Diagnostics.Debugger.IsAttached
Questo fa essenzialmente la stessa cosa.
C'è una proprietà IsInDesignMode che è possibile utilizzare. In alcune circostanze, tuttavia, non è accurato, pertanto è possibile anche controllare lo UsageMode.
public static bool IsRunningInIdeContext
{
get {
if (DesignerProperties.IsInDesignMode)
return true;
return LicenseManager.UsageMode == LicenseUsageMode.Designtime;
}
}
IsInDesignMode può essere utilizzato da un controllo (in una libreria) per capire se è ospitato nel designer (studio visivo) o in un'applicazione in esecuzione, ma non ha nulla a che fare con il rilevamento se l'applicazione è stata cancellata dall'IDE o no . IsInDesignMode restituirà true solo per un controllo che è stato istanziato dall'IDE, non se l'app viene avviata dall'IDE – Max
Quindi chiarire che nella domanda. Questo è più o meno quello che ho capito dal 'programma è attualmente in esecuzione nell'IDE'. – fjdumont
@fjdumont Durante la fase di progettazione il programma non è in esecuzione, vero? – mg30rg
Oppure basta guardare l'elenco correlato sul lato destro di questa pagina – Steve
Credo che sia un buon uso di '#if DEBUG'. – IAbstract
@IAbstract, non così se si sta eseguendo nella configurazione di rilascio. – Morrison