Как можно проверить консольное ли приложение или оконное? Может в winapi есть какое-то описание процесса, его свойств?
Если вы используете майкрософтовский SDK, то начиная с версии 10 для проверки "самого себя" у вас есть [недокументированная или полу-документированная] возможность сделать
#include <process.h>
...
_crt_app_type type = _query_app_type();
с возвращаемыми значениями _crt_console_app и _crt_gui_app.
Аналогичные возможности есть и в более ранних версиях SDK, но интерфейс варьируется.
В текущем процессе проверить, является ли приложение консольным, можно так:
#include <Dbghelp.h>
#pragma comment(lib, "Dbghelp")
extern "C" const IMAGE_DOS_HEADER __ImageBase;
...
bool isConsole(){
PIMAGE_NT_HEADERS nt = ImageNtHeader((void*)&__ImageBase);
return nt->OptionalHeader.Subsystem == IMAGE_SUBSYSTEM_WINDOWS_CUI;
}
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости