Ошибка 0xc0000139 при запуске
Я получаю ошибку 0xc0000139 при запуске. Сообщение об ошибке не очень помогает (см. приложение). Отладка невозможна, потому что ошибка происходит до вызова wxApp:Init().
Все, что я делал, это добавил поле и немного текста в диалоговое окно (включая определения в файлах .h). Текст ошибки говорит что-то о wxTextCtrl, но код выглядит так же, как и поля прямо над ним.
Я уверен, что это что-то совершенно глупое, но сейчас я не имею никакого представления, что это может быть.
Любая помощь приветствуется!
Решение:
ultrajunkie
Сообщения: 29
Присоединился: Вс мая 30, 2021 10:11 утра
by ultrajunkie Пн мая 29, 2023 7:30 утра
Я использую версию 3.2.2.1 и собрал ее сам с помощью mingw64.
Интересное наблюдение: у меня есть 2 машины дома (1 настольный компьютер с i9 и 64 ГБ ОЗУ, 1 ноутбук с i7 и 16 ГБ ОЗУ), обе с последней версией W10 Professional 64bit. Проблема возникла на настольном компьютере. После пересборки приложения на ноутбуке оно заработало там. Однако тот же самый .exe продолжает вызывать ошибку на настольном компьютере.
Сейчас я попробую откатить изменения от вчера и посмотреть, работает ли это снова, но учитывая, что я не знаю, что пошло не так, я не уверен, что это решение.
Вопрос:
PB
**Часть **Мебель
Сообщения: 4128
Присоединился: Вс янв 03, 2010 5:45 NP
by PB Пн мая 29, 2023 9:17 утра
**Все ли wxWidgets (например, wxbase32u_gcc_custom.dll и wxmsw32u_core_gcc_custom.dll) и компилятор (например, libgcc_s_seh-1.dll, libstdc++-6.dll и libwinpthread-1.dll) DLL-файлы идентичны на обоих компьютерах? **
Находятся ли они в папке с исполняемым файлом (таким образом, Windows не может просто выбрать первый, который находит в PATH)?
by ultrajunkie Вт мая 29, 2023 1:48 PN
Учитывая, что я использую те же инструменты и файлы для сборки, я ожидаю, что библиотеки идентичны. Однако я это не проверил.
title: Error 0xc0000139 during Startup
Дата: Mon May 29, 2023 3:14 pm
Ошибка 0xc0000139 при запуске
Убедитесь, что все DLL-файлы, необходимые для программы, находятся в той же папке, что и исполняемый файл. Это важно для предотвращения ошибок и обеспечения правильной работы приложения.
Предложения к разработчикам
Если вы член команды разработки, у меня есть 2 предложения:
По умолчанию включите флаг USE_QA в файле config.gcc. Это поможет избежать ошибок при связывании в Codelite.
Возможно, представить библиотеку wxQA с единственным классом wxDebugReport для поддержки использования на Windows только с помощью MSVC.
Подумайте об этих предложениях, чтобы улучшить качество приложения.
Автор: PB

Посты: 4128
Присоединился: Вс янв 03, 2010 5:45 pm
## Реализация оптического потока Лукаса-Канаде на OpenCV
Этот код демонстрирует базовую реализацию оптического потока Лукаса-Канаде на OpenCV с использованием C++.
## Ключи управления
- **ESC:** выход из программы
- **r:** автоматическая инициализация отслеживания
- **c:** удаление всех точек
- **n:** включение/выключение режима ночь
- Чтобы добавить или удалить точку особенности, щелкните по ней.
## Код
```cpp
cout << \nIt uses camera by default, but you can provide a path to video as an argument.\n;
cout << \nHot keys: \n
\tESC - quit the program\n
\tr - auto-initialize tracking\n
\tc - delete all the points\n
\tn - switch the \night\ mode on/off\n
To add/remove a feature point click it\n << endl;
Point2f point;
bool addRemovePt = false;
static void onMouse( int event, int x, int y, int /*flags*/, void* /*param*/ )
{
if( event == EVENT_LBUTTONDOWN )
{
point = Point2f((float)x, (float)y);
addRemovePt = true;
}
}
int main( int argc, char** argv )
{
// Инициализация переменных и установка параметров
}
if( !cap.isOpened() )
{
cout << Could not initialize capturing...\n;
return 0;
}
namedWindow( LK Demo, 1 );
setMouseCallback( LK Demo, onMouse, 0 );
for(;;)
{
cap >> frame;
if( frame.empty() )
break;
// Обработка кадра
}
goodFeaturesToTrack(gray, points[1], MAX_COUNT, 0.01, 10, Mat(), 3, 3, 0, 0.04);
cornerSubPix(gray, points[1], subPixWinSize, Size(-1,-1), termcrit);
addRemovePt = false;
calcOpticalFlowPyrLK(prevGray, gray, points[0], points[1], status, err, winSize,3, termcrit, 0, 0.001);
circle( image, points[1][i], 3, Scalar(0,255,0), -1, 8);
if( addRemovePt && points[1].size() < (size_t)MAX_COUNT )
{
vector<Point2f> tmp;
tmp.push_back(point);
cornerSubPix( gray, tmp, winSize, Size(-1,-1), termcrit);
points[1].push_back(tmp[0]);
}
}
## Заключение
Этот код показывает основы использования оптического потока Лукаса-Канаде на OpenCV с возможностью управления через горячие клавиши.
Ошибка в коде OpenCV C++: Процесс завершен с кодом выхода -1073741511 (0xC0000139)






