```cpp
// LuaC_Language.cpp
#include <windows.h>
#include <tchar.h> // Для макроса TEXT и типа TCHAR

// Имя класса окна
const wchar_t g_szClassName[] = L"MyWindowClass";

// Идентификатор кнопки
#define ID_BUTTON 1

// Прототип функции окна (Window Procedure)
LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);

static int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
    LPWSTR lpCmdLine, int nCmdShow)
{
    // Инициализация структуры WNDCLASSEX нулями
    WNDCLASSEX wc = { 0 };
    HWND hwnd;
    MSG Msg = { 0 };

    // Шаг 1: Регистрация класса окна
    wc.cbSize = sizeof(WNDCLASSEX);
    wc.style = CS_HREDRAW | CS_VREDRAW;
    wc.lpfnWndProc = WndProc; // Указатель на функцию окна
    wc.cbClsExtra = 0;
    wc.cbWndExtra = 0;
    wc.hInstance = hInstance;
    wc.hIcon = LoadIcon(NULL, IDI_APPLICATION); // Стандартная иконка
    wc.hCursor = LoadCursor(NULL, IDC_ARROW);     // Стандартный курсор
    wc.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);        // Цвет фона
    wc.lpszMenuName = NULL;
    wc.lpszClassName = g_szClassName;                    // Имя класса
    wc.hIconSm = LoadIcon(NULL, IDI_APPLICATION); // Маленькая иконка

    if (!RegisterClassEx(&wc))
    {
        MessageBox(NULL, L"Класс окна не зарегистрирован!", L"Ошибка",
            MB_ICONEXCLAMATION | MB_OK);
        return 0;
    }

    // Шаг 2: Создание окна
    hwnd = CreateWindowEx(
        WS_EX_CLIENTEDGE,
        g_szClassName,
        L"Простое окно на C++ с использованием Win32 API",
        WS_OVERLAPPEDWINDOW,
        CW_USEDEFAULT, CW_USEDEFAULT, 500, 400,
        NULL, NULL, hInstance, NULL);

    if (hwnd == NULL)
    {
        MessageBox(NULL, L"Окно не создано!", L"Ошибка",
            MB_ICONEXCLAMATION | MB_OK);
        return 0;
    }

    // Создание кнопки
    HWND hwndButton = CreateWindowEx(
        0,
        L"BUTTON",             // Класс кнопки
        L"Нажми меня",        // Текст кнопки
        WS_TABSTOP | WS_VISIBLE | WS_CHILD | BS_DEFPUSHBUTTON, // Стиль кнопки
        50,                    // X-позиция
        100,                   // Y-позиция
        100,                   // Ширина
        30,                    // Высота
        hwnd,                  // Родительское окно
        (HMENU)ID_BUTTON,      // Идентификатор
        hInstance,             // Дескриптор инстанса
        NULL);                 // Дополнительные параметры

    ShowWindow(hwnd, nCmdShow);
    UpdateWindow(hwnd);

    // Шаг 3: Цикл обработки сообщений
    while (GetMessage(&Msg, NULL, 0, 0) > 0)
    {
        TranslateMessage(&Msg); // Перевод виртуальных ключей в символы
        DispatchMessage(&Msg);  // Передача сообщения в функцию окна
    }
    return (int)Msg.wParam;
}

// Функция окна (Window Procedure)
LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
    switch (msg)
    {
    case WM_COMMAND:
    {
        int wmId = LOWORD(wParam);
        // Проверка идентификатора команды
        if (wmId == ID_BUTTON)
        {
            MessageBox(hwnd, L"Кнопка была нажата!", L"Сообщение", MB_OK | MB_ICONINFORMATION);
        }
    }
    break;
    case WM_CLOSE:
        DestroyWindow(hwnd);
        break;
    case WM_DESTROY:
        PostQuitMessage(0);
        break;
    case WM_PAINT:
    {
        PAINTSTRUCT ps;
        HDC hdc = BeginPaint(hwnd, &ps);
        // Рисуем текст в окне
        const wchar_t* text = L"Привет, Windows!";
        TextOutW(hdc, 50, 50, text, wcslen(text));
        EndPaint(hwnd, &ps);
    }
    break;
    default:
        return DefWindowProc(hwnd, msg, wParam, lParam);
    }
    return 0;
}
```
Серьезность	Код	Описание	Проект	Файл	Строка	Состояние подавления	Подробности
Предупреждение	C4267	аргумент: преобразование из "size_t" в "int"; возможна потеря данных	LuaC Language	C:\Users\Admin\source\repos\LuaC Language\LuaC Language.cpp	113		
Ошибка	C2731	WinMain: функция не может быть перегружена	LuaC Language	C:\Users\Admin\source\repos\LuaC Language\LuaC Language.cpp	14