#include "server.h" #include "version.h" #include #ifdef _WIN32 #include #include #include #ifndef ENABLE_VIRTUAL_TERMINAL_PROCESSING #define ENABLE_VIRTUAL_TERMINAL_PROCESSING 0x0004 #endif #endif 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 mpinfo("Build At {} {} under {} on {}", __DATE__, __TIME__, VERSION_GIT_COMMIT, VERSION_GIT_BRANCH); int port = 9898; if (argc < 2) { mpinfo("Use Default Port:{}", port); } else { std::string str_port(argv[1]); port = std::stoi(str_port); mpinfo("Use Port:{}", port); } asio::io_context io_context; CTcpServer server(io_context); if (!server.start(port)) { return -1; } io_context.run(); return 0; }