Ich habe Probleme mit einer Anwendung, die ich geschrieben habe. Sie erstellt im Grunde dynamisch generierte Assemblys basierend auf Codeeingabe durch den Benutzer.
Es kompiliert und läuft gut, aber aus irgendeinem Grund, manchmal, wenn eine Ausnahme in dieser kompilierten Assembly auftritt, stürzt es das Hauptprogramm ab, obwohl alles in Try/Catch-Blöcke vollständig beschichtet ist.Fehler beim Erfassen der dynamisch generierten Assembly
ich hinzufügen try/catch-Blöcke des Benutzers Code in der generierten Assembly zu umgeben, und auch try/catch um die Invocation der Versammlung in meiner App:
StringBuilder verificationErrors = new StringBuilder();
argz[0] = "hello!";
argz[1] = verificationErrors;
object loResult = null;
try
{
loResult = loObject.GetType().InvokeMember("doThis", BindingFlags.InvokeMethod, null, loObject, argz);
}
catch (Exception p)
{
MessageBox.Show(p.Message);
}
Es ist wie der Fehler sieht geworfen wird außerhalb der Reichweite meiner App, so dass es nicht weiß, wie man es fängt oder etwas in dieser Richtung ... irgendwelche Ideen?
Was ist der Fehler? –
... und wie generieren Sie die Baugruppe? CodeDom? Reflection.Emit? Etwas anderes? –
Haben Sie versucht, es zu debuggen, indem Sie einen Haltepunkt bei 'loResult = .....' setzen, um zu überprüfen, ob das Steuerelement diese Zeile erreicht oder nicht? –