Как установить уровень ошибки при выходе из приложения MFC

У меня есть устаревшее приложение MFC, которое я помогаю поддерживать. Я не совсем уверен, как определить версию MFC, и я не думаю, что это все равно будет иметь значение.

Приложение может принимать некоторые параметры в командной строке; Я хотел бы иметь возможность установить уровень ошибок при выходе из приложения, чтобы файл bat / cmd мог проверять сбой и реагировать соответствующим образом.

Я не верю, что exit () сработает (честно говоря, еще не пробовал) из-за того, что это приложение MFC. Кто-нибудь знает, как установить уровень ошибки, возвращаемый приложением MFC? Могу я просто использовать exit ()?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
4
0
5 026
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

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

Ответ принят как подходящий

Я не могу поверить в это, поэтому, пожалуйста, не пишите этот ответ.

CWinApp :: ExitInstance (); return myExitCode;

Это вернет уровень ошибки в вызывающий командный файл, чтобы вы затем оценили и отреагировали.

Мне всегда удавалось возвращать код ошибки из CWinApp :: ExitInstance. Я полагаю, что реализация по умолчанию вернет значение из сообщения о выходе. Так что вы можете использовать AfxPostQuitMessage, если это проще. Но второй способ я лично не тестировал.

Если ваше приложение отказывается обновлять ERRORLEVEL в оболочке DOS, из которой вы его запускаете, независимо от того, что вы делаете в коде своей программы, может помочь запустить ваше приложение с помощью «start / wait», чтобы оболочка была заблокирована до завершения вашей программы. .

Другие вопросы по теме