2013-10-13 2 views
0

У меня есть довольно стандартное приложение C++/QT, которое отлично работает в отладке и выпуске на моем компьютере разработки. При тестировании версии релиза на чистом ПК она работает, но часть функциональности (показывая видео через USB-соединение) просто не запускается. Что ж, я видел это раньше, и моя стандартная техника заключается в добавлении отладочной информации в сборку релиза, настройке удаленной отладки и просмотре. К моему большому удивлению, он отлично работает в качестве выпуска с информацией об отладке (.pdb) Я никогда раньше этого не видел.Проблема с выпуском сборки выпуска

Использование зависимого ходока показывает отсутствие проблем с любыми зависимостями. Используя профайлер, который является частью Dependency Walker, он также отлично работает.

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

Есть ли способ отладки, который может помочь мне найти эту проблему? Мы используем VS2008 и Qt 4.7.1.

ответ

1

Уточните окна сообщений - используйте файл журнала.

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

Используя файл журнала с отметками времени, вы должны иметь возможность отслеживать, когда это происходит.

+0

WindDebug - хороший друг. В результате добавления информации об отладочной записи и регистрации в журнале было установлено условие, которое было неинициализированной переменной. Взял два дня, чтобы наконец отследить его. – ExpatEgghead

1

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

Смежные вопросы