Приложение WP 8 отлично работает в режиме отладки в собственном режиме (режим выпуска), но вылетает без отладчика

Рассматриваемое приложение использует как собственный, так и управляемый код. Управляемый код предоставляет только слой пользовательского интерфейса, в то время как он связывается с собственной библиотекой DLL, которая выполняет большую часть операций. Собственная dll связывается с некоторыми другими статическими dll. Теперь проблема в том, что когда я запускаю приложение, оно недетерминировано падает. Когда я отлаживаю приложение в режиме отладки управляемого кода, оно показывает, что конкретная функция в собственном коде вызвала исключение «SEH». Трассировка стека просто показывает текущую функцию. Код ошибки, который я получаю в исключении SEH, — EFAIL. Однако приложение каждый раз работает нормально под собственным отладчиком. Функция, которая генерирует исключение SEH, является однопоточной. Он не использует никаких ресурсов, к которым можно получить доступ в любом другом потоке. Что может быть возможной причиной такого поведения? Как мне определить источник исключения в собственном коде. Пошаговое выполнение под отладчиком не помогает, так как проблема не проявляется, когда приложение работает под отладчиком.

Я использую визуальную студию 2012.


person bashrc    schedule 01.10.2013    source источник


Ответы (1)


Вы используете DirectX? Исключение SEH возникает, когда DeviceContext используется из многих потоков одновременно, поскольку DeviceContext не является потокобезопасным.

person shnyaps    schedule 11.10.2013