Qt 5.5.0 с mingw в Windows: скомпилированный исполняемый файл не может быть завершен

У меня действительно странная проблема. Я использую Qt 5.5.0 с mingw 4.9.2 32bit и QtCreator и Git в Windows 7.

Мой проект строится просто отлично, но когда я запускаю исполняемый файл снаружи или внутри QtCreator, процесс появляется в Task-Manager/ProcessExplorer, но само окно не отображается, и когда я пытаюсь убить процесс, он появляется не реагировать. Process Hacker также не может завершить процесс. Отладчик QtCreator тщетно ждет запуска процесса. Мне нужно перезагрузить компьютер, чтобы убить процесс.

Дело в том, что это работало несколько дней назад, и другие проекты qt тоже работают нормально. У меня была такая же проблема на другом ПК. Я не смог найти проблему, поэтому сбросил ее на стоковую; Я не могу сделать то же самое с этим.

Что я мог сделать, чтобы вызвать это?


person singinWhale    schedule 08.12.2015    source источник
comment
Process Explorer и Process Hacker могут отображать трассировки стека потоков, можете ли вы опубликовать их здесь? Кроме того, вы можете попробовать запустить этот двоичный файл в Process Monitor и посмотреть, какие ресурсы он пытается использовать, прежде чем застрять. И попробуй обновиться до 5.5.1, в 5.5.0 было много багов.   -  person Paul    schedule 08.12.2015
comment
Требуется отладка? Нажмите Прерывание || в отладчике Qt Creator и пройдитесь по потокам, посмотрите, почему они зависают. Я подозреваю, что основной поток завис.   -  person Alexander V    schedule 08.12.2015
comment
Дело в том, что это сработало несколько дней назад» — вы изменили среду разработки, проект или и то, и другое? Если бы изменился только проект, я бы просмотрел историю контроля версий, чтобы найти регрессию (например, git bisect, если вы используете git). В противном случае используйте отладчик.   -  person Frank Osterfeld    schedule 09.12.2015
comment
@Paul Пол, я хотел бы предоставить вам трассировку стека и данные procmon, но не могу. У ProcessExplorer возникает ошибка при доступе к потоку, а ProcessHacker никогда не завершается. Я попробую обновить до 5.5.1, но это не сработало и на другой машине.   -  person singinWhale    schedule 09.12.2015
comment
@FrankOsterfield Проект отлично работает на другой моей машине. Вероятно, это как-то связано с тем, как настроен проект, но я удалил все конфигурации, и ошибка осталась.   -  person singinWhale    schedule 09.12.2015
comment
@AlexanderVX Отладчик не контролирует программу, потому что она не отвечает, поэтому я не могу просто приостановить ее.   -  person singinWhale    schedule 09.12.2015
comment
Отладчик всегда должен иметь возможность остановить программу. Это означает, что вы неправильно настроили отладчик: stackoverflow.com/questions/34028015/   -  person Alexander V    schedule 09.12.2015
comment
И убедитесь, что вы запускаете программу с помощью команды «Начать отладку», а не «Выполнить в Qt Creator».   -  person Alexander V    schedule 09.12.2015
comment
Возможно, на машине установлен какой-то антивирус или другое подобное программное обеспечение, которое перехватывает создание процесса и по какой-то причине не позволяет процессу запуститься. По крайней мере симптомы таковы, что что-то не так на уровне ядра.   -  person Paul    schedule 09.12.2015
comment
@ Пол, боже мой, я не могу поверить, что это был антивирус. Разве антивирус не должен сообщать мне, что он блокирует или анализирует что-то? Потому что он мне НИЧЕГО не показал. Спасибо, Пол!   -  person singinWhale    schedule 09.12.2015
comment
Так это все-таки был антивирус?   -  person Paul    schedule 09.12.2015
comment
да, это был антивирус (›ლ)   -  person singinWhale    schedule 09.12.2015


Ответы (1)


Хорошо, я нашел проблему. Это была моя антивирусная программа. Я использую бесплатный антивирус avast, и каким-то образом он вызвал проблему, не сказав мне об этом. Исключение каталога сборки из сканирования решило проблему.

Спасибо Павел за ответ!

person singinWhale    schedule 09.12.2015