IllegalPrepareConstrainedRegion
Der IllegalPrepareConstrainedRegion-MDA (Managed Debugging Assistant, Assistent für verwaltetes Debuggen) wird aktiviert, wenn der try-Anweisung des Ausnahmehandlers nicht unmittelbar ein Aufruf der System.Runtime.CompilerServices.RuntimeHelpers.PrepareConstrainedRegions-Methode vorangestellt ist. Diese Einschränkung gilt auf MSIL-Ebene. Es ist deshalb zulässig, dass sich zwischen dem Aufruf und der try-Anweisung Quellcode befindet, der keinen Code generiert (z. B. Kommentare).
Ein eingeschränkter Ausführungsbereich (Constrained Execution Region, CER), der nicht als solcher behandelt wird, sondern als einfacher Ausnahmehandlerblock (finally oder catch). Als Folge davon wird dieser Bereich bei nicht ausreichendem Speicherplatz oder im Fall eines Threadabbruchs nicht ausgeführt.
Die Regeln zum Vorbereiten eines CER wurden nicht ordnungsgemäß befolgt. Es handelt sich hierbei um ein Fehlerereignis. Der Aufruf der PrepareConstrainedRegions-Methode, der zum Kennzeichnen des Beginns eines CER in den catch/finally/fault/filter-Blöcken von Ausnahmehandlern verwendet wird, muss direkt vor der try-Anweisung erfolgen.