CE 6.0 / .NET CF 3.5-Anwendung hat einen schwerwiegenden Fehler festgestellt (MC3100)

Beim Beenden meiner .NET CF 3.5-Anwendung auf dem Motorola MC3100 (nur CE 6.0-Version) wird die Fehlermeldung "Anwendung xxx hat einen schwerwiegenden Fehler festgestellt und muss beendet werden" angezeigt. Ich muss dann das Gerät warm booten, damit die Anwendung wieder funktioniert.

Dieser Code funktioniert einwandfrei, bis die Anwendung heruntergefahren wird, und schlägt nur fehl, wenn eine Schriftart für ein Steuerelement in der Anwendung festgelegt ist. Alles funktioniert auch mit .NET CF 2.0 und allen anderen Motorola-, Intermec-, Psion- und HHC-Geräten, die ich mit .NET CF 3.5 ausprobiert habe.

Hier ist mein aktueller Testcode:

[MTAThread]
static void Main()
{
  Control oCtrl = new Control();
  oCtrl.Font = new System.Drawing.Font("Tahoma", 10F, System.Drawing.FontStyle.Bold);

  // Setting the controls font to null works
  // oCtrl.Font = null;  Works

  // Setting the Control to null does not work, still get error
  // oCtrl = null;       Doesn't work

  // Setting a font, not on a control, also works fine.
  // System.Drawing.Font font = new System.Drawing.Font("Tahoma", 10F, System.Drawing.FontStyle.Bold);
}

Ich habe ein paar verwandte Links gesehen:

Anwendung stürzt beim Beenden mit Button2 abProblem mit CF 3.5 und Windows CE 6Fehler beim Schließen

Die einzige Empfehlung, die ich bisher gefunden habe, ist, Schriften in der Anwendung zu entfernen. In diesem Fall gibt es einfach zu viele Stellen, an denen Schriftarten festgelegt werden, einschließlich verknüpfter Assemblys, als dass dies unmöglich wäre.

Hat noch jemand so etwas gesehen. Es scheint etwas damit zu tun zu haben, dass die Steuerelemente die Schriftarten in diesen Versionen nicht richtig anordnen.

Antworten auf die Frage(8)

Ihre Antwort auf die Frage