Manchmal möchte man die Ausführung eines Programmes solange anhalten bis ein Debugger angehängt wurde z.B. beim debuggen von CustomActions innerhalb eines WiX Bootstrappers.
Mit folgendem kleinen Snippet (in der Hauptdatei des Bootstrappers) ist mir das relativ einfach gelungen.
#if DEBUG
// Solange warten bis ein Debugger an den Prozess angehängt wurde.
while(!System.Diagnostics.Debugger.IsAttached)
{
System.Threading.Thread.Sleep(1000);
}
#endif