CE 6.0 / .NET CF 3.5 Приложение столкнулось с серьезной ошибкой (MC3100)

При выходе из приложения .NET CF 3.5 на Motorola MC3100 (только в версии CE 6.0) я получаю сообщение об ошибке «Приложение xxx обнаружило серьезную ошибку и требует завершения». Затем мне нужно перезагрузить устройство, чтобы приложение снова заработало.

Этот код работает нормально до тех пор, пока приложение не будет закрыто, и он не будет работать, только если на элементе управления в приложении установлен шрифт. Все также отлично работает на .NET CF 2.0 и на всех других устройствах Motorola, Intermec, Psion, HHC, которые я пробовал с .NET CF 3.5.

Вот мой текущий тестовый код:

[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);
}

Я видел несколько ссылок, которые кажутся связанными:

Application crashes on exit when using Button2 Problem with CF 3.5 and Windows CE 6 Error on close

Но пока единственная рекомендация, которую я нашел, - исключить шрифты в приложении. В этом случае слишком много мест, где установлены шрифты, включая связанные сборки, что было бы невозможно.

Кто-нибудь еще видел что-нибудь подобное? Похоже, что-то, что связано с элементами управления, неправильно распределяющими шрифты в этих версиях.

Ответы на вопрос(8)

Ваш ответ на вопрос