Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
7 / 7 / 0
Регистрация: 04.11.2016
Сообщений: 94

Проблема с отладкой WinAPI

29.05.2022, 11:03. Показов 1055. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день! Не получается отбилдить код оконного приложения в Embarcadero Dev-C++. Скажите, поддерживает ли оные вообще Embarcadero ver 6.3? Как запустить отладку Windows? Директива <winuser.h> до одного места.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <Windows.h>
#include <winuser.h>
 
LRESULT CALLBACK SoftwareMainProcedure(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp); 
WNDCLASS NewWindowClass(HBRUSH BGColor, HCURSOR Cursor, HINSTANCE hInst, HICON Icon, LPCWSTR Name, WNDPROC Procedure);
 
int WINAPI WinMain (HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR args, int ncmdshow) {
    WNDCLASS SoftwareMainClass = NewWindowClass((HBRUSH)COLOR_WINDOW, LoadCursor(NULL, IDC_ARROW), hInst, LoadIcon(NULL, IDI_QUESTION), L"MainWndClass", SoftwareMainProcedure);
    
    if (!RegisterClassW(&SoftwareMainClass)) { return -1;}
    MSG SoftwareMainMessage = { 0 };
    
    CreateWindow(L"MainWndClass",L"First c++ window", WS_OVERLAPPEDWINDOW | WS_VISIBLE, 100, 100, 500, 250, NULL, NULL, NULL, NULL);
    
    while (GetMessage(&SoftwareMainMessage, NULL, NULL, NULL)) {
    TranslateMessage(&SoftwareMainMessage);
    DispatchMessage (&SoftwareMainMessage);
    }
    return 0;
}
WNDCLASS NewWindowClass(HBRUSH BGColor, HCURSOR Cursor, HINSTANCE hInst, HICON Icon, LPCWSTR Name, WNDPROC Procedure) {
    WNDCLASS NWC = { 0 };
 
    NWC.hIcon = Icon;
    NWC.hCursor = Cursor;
    NWC.hInstance = hInst;
    NWC.lpszClassName = Name;
    NWC.hbrBackground = BGColor;
    NWC.lpfnWndProc = Procedure;
    
    return NWC;
}
 
LRESULT CALLBACK SoftwareMainProcedure(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp) {
        switch (msg) {
            case WM_CREATE:
                 break;
            case WM_DESTROY:
                PostQuitMessage(0);
                break;       
        default:return DefWindowProc(hWnd, msg, wp, lp);
        }
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.05.2022, 11:03
Ответы с готовыми решениями:

Проблема с отладкой Qt
При запуске отладчика вылетает ошибка (скрин внизу). Установил Debugging Tools for Windows для windows 8.1 - не помогло, та же самая...

Проблема с отладкой кода, игнор изменений
Привет! Qt стоит на винде, компилятор minqw32 4.9.2, отладчик gdb 7.8. Не могу понять почему, при изменении кода никак не меняется...

Проблема с отладкой
Здравствуйте! Помогите, пожалуйста, решить проблему. Проблема состоит в следующем, когда я провожу отладку кода у меня возникают...

2
Злостный нарушитель
 Аватар для Verevkin
10298 / 5721 / 1268
Регистрация: 12.03.2015
Сообщений: 26,494
29.05.2022, 12:14
Цитата Сообщение от fennix Посмотреть сообщение
Не получается отбилдить код оконного приложения в Embarcadero Dev-C++.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#include <Windows.h>
//#include <winuser.h>
 
WNDCLASSW NewWindowClass(HBRUSH BGColor,
                        HCURSOR Cursor,
                        HINSTANCE hInst,
                        HICON Icon,
                        LPCWSTR Name,
                        WNDPROC Procedure)
{
  WNDCLASSW NWC = { 0 };
 
  NWC.hIcon = Icon;
  NWC.hCursor = Cursor;
  NWC.hInstance = hInst;
  NWC.lpszClassName = Name;
  NWC.hbrBackground = BGColor;
  NWC.lpfnWndProc = Procedure;
 
  return NWC;
}
 
LRESULT CALLBACK SoftwareMainProcedure(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
{
  switch (msg)
  {
    case WM_CREATE:
      break;
    case WM_DESTROY:
      PostQuitMessage(0);
      break;
    default:
      return DefWindowProc(hWnd, msg, wp, lp);
  }
 
  return 0;
}
 
int WINAPI WinMain (HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR args, int ncmdshow)
{
  WNDCLASSW SoftwareMainClass = NewWindowClass((HBRUSH)COLOR_WINDOW,
                                              LoadCursor(NULL, IDC_ARROW),
                                              hInst,
                                              LoadIcon(NULL, IDI_QUESTION),
                                              L"MainWndClass",
                                              SoftwareMainProcedure);
 
  if (!RegisterClassW(&SoftwareMainClass))
  {
    return -1;
  }
  MSG SoftwareMainMessage = { 0 };
 
  CreateWindow("MainWndClass",
                "First c++ window",
                WS_OVERLAPPEDWINDOW | WS_POPUPWINDOW | WS_VISIBLE,
                100, 100, 500, 250,
                NULL, NULL, NULL, NULL);
 
  while (GetMessage(&SoftwareMainMessage, NULL, NULL, NULL))
  {
    TranslateMessage(&SoftwareMainMessage);
    DispatchMessage (&SoftwareMainMessage);
  }
  return 0;
}
Вложения
Тип файла: 7z thread2991596.7z (61.7 Кб, 6 просмотров)
1
7 / 7 / 0
Регистрация: 04.11.2016
Сообщений: 94
29.05.2022, 18:47  [ТС]
Огромное спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.05.2022, 18:47
Помогаю со студенческими работами здесь

Проблема с отладкой
В данном фрагменте я пытаюсь перебрать все элементы списка population и разбить population.chromosome_1 на более мелкие группы; L и...

Проблема с отладкой SysTick
Доброго времени суток, господа. Может кто сталкивался и подскажет. Работаю с STM32F103RB в среде IAR 6.21.1. Отладчик JetLink8. Использую...

Проблема с отладкой программы
Задание звучит так: Сформировать файл из значений случайных величин: 0.431, 0.511, 0.987, 0.655, 0.711, 0.124, 0.312, 0.911, 0.216....

Проблема с отладкой в Eclipse
Проблема с отладкой в Eclipse: не могу посмотреть значение переменных. Обычно добавлял переменные с помощью кнопки Add Global Variables на...

проблема с отладкой JS в Firefox
Неожиданно столкнулся с такой проблемой, как-то давно не требовалась отладка JS: страница находится под логином и паролем. На ней не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru