diff --git a/client/main.cpp b/client/main.cpp index 7ac05b2..45fcd48 100644 --- a/client/main.cpp +++ b/client/main.cpp @@ -5,6 +5,15 @@ #include #include +#ifdef _WIN32 +#include +#include +#include +#ifndef ENABLE_VIRTUAL_TERMINAL_PROCESSING +#define ENABLE_VIRTUAL_TERMINAL_PROCESSING 0x0004 +#endif +#endif + std::shared_ptr g_Logger = nullptr; std::shared_ptr g_Config = nullptr; @@ -85,6 +94,15 @@ bool exec_cmd(const CmdParam& param, bool& run) int main(int argc, char* argv[]) { + +#ifdef _WIN32 + HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE); + DWORD mode; + GetConsoleMode(hConsole, &mode); + mode |= ENABLE_VIRTUAL_TERMINAL_PROCESSING; + SetConsoleMode(hConsole, mode); +#endif + g_Config = std::make_shared(); if (!g_Config->baseInit()) { return -1; diff --git a/util/util.h b/util/util.h index 5704f4b..7758572 100644 --- a/util/util.h +++ b/util/util.h @@ -4,6 +4,7 @@ #include #include #include +#include #include #include #include