У меня очень странная проблема. Оригинальная программа работала нормально, но теперь небольшое обновление программы дает сбой одному пользователю, но работает нормально для всех остальных.
По сути, как только он запускает программу, он получает сообщение об ошибке Windows «Программа X перестала работать» и дамп:
Название проблемного события: APPCRASH
Имя приложения: programname.exe
Версия приложения: 0.0.0.1
Метка времени применения: 535ceb8c
Название модуля неисправности: programname.exe
Версия модуля неисправности: 0.0.0.1
Временная метка модуля неисправности: 535ceb8c
Код исключения: c000001d
Смещение исключения: 004a5542
Версия ОС: 6.1.7601.2.1.0.768.3
Locale ID: 2057
Дополнительная информация 1: ac38
Дополнительная информация 2: ac387466df76c7f98f034212b24686d7
Дополнительная информация 3: 23ca
Дополнительная информация 4: 23cafe810bbb46d87a7f0938a06eb3ea
Как только он закрывает диалог ошибки программа запускается нормально и работает без проблем. Ни у кого больше нет этой проблемы, поэтому я подозреваю, что это также может быть связано с ОС / настройкой.
Программа даже ничего не делает (при запуске), это просто простой интерфейс. Так что он падает до того, как доходит до моего реального кода.
Построен с:
-Qt 5.1.0
-msvc 2010
ОС Windows 7
Код, который предположительно выполняет:
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.setWindowIcon(QIcon(":/favicon.ico"));
w.setWindowFlags(Qt::FramelessWindowHint | Qt::WindowMinimizeButtonHint);
w.show();
return a.exec();
}
Главное окно конструктора:
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
ui->tabWidget->setCurrentIndex(0);
isStartupUpdate=true;
ismax=false;
}
Есть ли какие-либо рекомендации о том, как подойти и исправить это?
Я только что сделал то же самое со мной на C #
я добавил Debugger.Break();
и там он показал, что приложение перестало работать. Это не должно произойти, насколько я знаю.
Я поменял на
#if DEBUG
Debugger.Break();
#endif
чтобы исправить это & работает сейчас