I add a simple script that just achieve this, some considerations:
#include <stdio.h>
#include <windows.h>
#include <conio.h>
void InitConsole()
{
WORD wColor = (BACKGROUND_GREEN | FOREGROUND_BLUE);
HANDLE handleConsole = GetStdHandle(STD_OUTPUT_HANDLE); /* Handle to current output buffer*/
COORD coord = {0, 0};
DWORD count;
CONSOLE_SCREEN_BUFFER_INFO consoleBuffer;
SetConsoleTextAttribute(handleConsole, wColor);
if (GetConsoleScreenBufferInfo(handleConsole, &consoleBuffer))
FillConsoleOutputAttribute(handleConsole, consoleBuffer.wAttributes, consoleBuffer.dwSize.X * consoleBuffer.dwSize.Y, coord, &count);
return;
}
int main()
{
InitConsole();
SetConsoleTitle("Mini Desktop App");
while(1){
printf("Works as expected\n");
printf("Press any Key to exit :)\n");
getch();
break;
}
return 0;
}
Using Defined Arguments
#include <stdio.h>
#include <windows.h>
#include <conio.h>
void InitConsole(int ForgC, int BackC)
{
WORD wColor = ((BackC & 0x0F) << 4) + (ForgC & 0x0F);
HANDLE handleConsole = GetStdHandle(STD_OUTPUT_HANDLE); /* Handle to current output buffer*/
COORD coord = {0, 0};
DWORD count;
CONSOLE_SCREEN_BUFFER_INFO consoleBuffer;
SetConsoleTextAttribute(handleConsole, wColor);
if (GetConsoleScreenBufferInfo(handleConsole, &consoleBuffer))
FillConsoleOutputAttribute(handleConsole, consoleBuffer.wAttributes, consoleBuffer.dwSize.X * consoleBuffer.dwSize.Y, coord, &count);
return;
}
int main()
{
InitConsole(15, 1);
SetConsoleTitle("Mini Desktop App");
while(1){
printf("Works as expected\n");
printf("Press any Key to exit :)\n");
getch();
break;
}
return 0;
}
Documentation