CFileDialog задерживается сбой

Я добавил диалог «Открыть файл» в свое диалоговое приложение MFC. Теперь, ровно через минуту (!) После закрытия диалогового окна открытия файла нажатием кнопки «Открыть» или «Отмена» происходит сбой приложения. Когда происходит сбой, в выходных данных происходит следующее:

1) несколько потоков Windows выходят;

2) набор исключений COM (0x80010108 «вызываемый объект отключен от своих клиентов» и 0x800401FD «Объект не подключен к серверу»);

3) наконец, возникает необработанное исключение: 0xC0000005: расположение чтения нарушения доступа 0xfeeefeee, с стеком вызовов, указывающим на ole32.dll.

Сказать, что я сбит с толку, — преуменьшение. Код для вызова диалога выглядит следующим образом:

CFileDialog fileDlg( TRUE, _T(".txt"), NULL, OFN_ALLOWMULTISELECT | OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST,
_T("Text file (*.txt)|*.txt||"), this);
INT_PTR res = fileDlg.DoModal();

Что может вызвать такую ​​вещь?

Как мне даже отладить это?

2

Решение

У меня было это точный проблема в Windows 7 x64, и, включив точки останова для всех исключений Win32, которые еще не выбраны (на вкладке исключений VS2015), я смог сузить ее до известной проблемы с fundisc.dll, которая была устранена с помощью дополнительного исправления от Microsoft: https://support.microsoft.com/en-us/kb/2494427

Это также решило проблемы на моем компьютере из окон Проводника Файла, которые зависали в случайные моменты времени. Все они были вызваны некоторой тупиковой ситуацией в сетевых COM-объектах, которая исправлена ​​этим исправлением.

3

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector