Я новичок в C и создаю консольное приложение, в котором мне нужно изменить стандартную 16-цветную палитру консоли Windows.Через этот вопрос я обнаружил, что мне нужно использовать функцию SetConsoleScreenBufferInfoEx()
, однако мой компилятор настаивает на том, чтобы такая функция не объявлялась (я только включил windows.h
).
Кроме того, он не распознает структуру CONSOLE_SCREEN_BUFFER_INFOEX
, которая необходима для работы функции, и распознает только CONSOLE_SCREEN_BUFFER_INFO
.
Я искал решение для этогов течение нескольких дней и самым близким, что я нашел, был ответ здесь , в котором говорилось, что мне нужно указать в своем коде, что я нацеливаюсь на версии Windows Vista или новее.Поэтому я попытался определить #define NTDDI_VERSION NTDDI_VISTA
и #define _WIN32_WINNT _WIN32_WINNT_VISTA
, но это тоже не сработало.
Помните, что я новичок в C, поэтому, пожалуйста, постарайтесь сделать любые ответы и объяснения максимально простыми(Я использую Code :: Blocks и Windows 10).
РЕДАКТИРОВАТЬ: Я много искал вокруг, и вот что я нашел, чтобы помочь сэкономить время для всехможет возникнуть та же проблема ( большая часть приведенной ниже информации может быть неправильной , поэтому будьте осторожны и не стесняйтесь исправлять ее, если это действительно так):