#include "logging.h" #include #include #include static const char* level_strings[] = { "DEBUG", "INFO", "WARNING", "ERROR" }; void log_message(LogLevel level, const char* format, ...) { va_list args; va_start(args, format); // 获取当前时间 time_t now; time(&now); struct tm* timeinfo = localtime(&now); char time_str[20]; strftime(time_str, sizeof(time_str), "%Y-%m-%d %H:%M:%S", timeinfo); // 格式化日志消息 char message[1024]; vsnprintf(message, sizeof(message), format, args); // 输出到调试控制台 char output[2048]; snprintf(output, sizeof(output), "[%s] [%s] %s\n", time_str, level_strings[level], message); OutputDebugStringA(output); // 输出到文件 FILE* log_file = fopen("system_info.log", "a"); if (log_file) { fprintf(log_file, "%s", output); fclose(log_file); } va_end(args); }