WPF UI падает только при отладке - PullRequest
5 голосов
/ 26 апреля 2011

Если перейти к «Отладка -> Пуск без отладки», мое приложение WPF работает нормально, но если перейти к «Отладка -> Начать отладку», пользовательский интерфейс исчезнет, ​​и это будет в окне «Вывод» в разделе «Отладка»:

Программа '[6744] UI.exe: Managed (v4.0.30319)' завершила работу с кодом -1073740791 (0xc0000409)

Никаких исключений не выдается или что-то еще.Почему это может случиться?Я использую библиотеку Prism, поэтому не уверен, связано ли это с этим.

Я могу отлаживать без сбоев, если присоединяю отладчик к процессу вручную.

Ответы [ 6 ]

1 голос
/ 19 января 2012

В моем случае у меня такая же проблема. Когда я изменил «Имя сборки» на не более 42 символов, мое приложение было собрано ...

Я думал, что это безумие, но работа.

0 голосов
/ 07 февраля 2014

У меня была такая же проблема, я изменил «Цель платформы» с x86 на «Любой процессор», и он работает нормально. Но только для VS2010, а не для VS2013

0 голосов
/ 10 июля 2013

Эта проблема может быть вызвана утилитой Microsoft EMET (Enhanced Mitigation Experience Toolkit) (http://support.microsoft.com/kb/2458544), если она установлена.

Проверьте журнал событий приложений на наличие ошибок, таких как "Имя приложения: UI.exe. EMET обнаружил смягчение EAF и закроет приложение: UI.exe" .

Если у вас есть такие ошибки - попробуйте настроить или просто удалить EMET: -)

0 голосов
/ 18 марта 2012

У меня похожая проблема в моем многопоточном приложении. Я пытался найти решение, но безуспешно. Если ваше приложение использует многопоточность, возможно, проблема в этом. Убедитесь, что ваш пользовательский интерфейс запущен в одном потоке с основным потоком ...

0 голосов
/ 07 февраля 2012

Если вы используете PRISM, могут возникнуть некоторые ошибки, если какой-либо из Контейнеров (заданных как регион) имеет содержимое.Каждые регионы должны быть элементами управления пустыми контейнерами или элементами управления пустыми элементами.

Prism имеет несколько различных конфигураций для режимов отладки и выпуска, что может быть причиной.Постарайтесь построчно анализировать файлы XAML-кода, в которых у вас есть элементы управления регионами, и проверяйте, являются ли теги пустыми.Лучший способ убедиться, что контейнеры пусты, - это создать короткие версии тегов

, например, попробуйте это

<ContentControl />

вместо этого

<ContentControl></ContentControl>
0 голосов
/ 26 апреля 2011

Возможно, у вас возникла исключительная ситуация, связанная с повреждением кучи во время инициализации объекта (переполнение стека или произвольное состояние нехватки памяти). В основном это вызвано методами P / Invoke или другим небезопасным кодом. Если вы не используете какой-либо небезопасный код, проверьте сторонние библиотеки, которые вы используете в качестве источника ошибки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...