Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 17.06.2022
Сообщений: 15
1

Проблема при создании окна

01.09.2022, 01:34. Показов 1175. Ответов 2

Author24 — интернет-сервис помощи студентам
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
#include<windows.h>
#include<tchar.h>
 
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
 
TCHAR WinName[] = _T("Main Frame");
 
int APIENTRY _tWinMain(HINSTANCE This, HINSTANCE Prev, LPTSTR cmd, int mode) {
    HWND hWnd;
    MSG msg;
    WNDCLASS wc;
 
    wc.hInstance = This;
    wc.lpszClassName = WinName;
    wc.lpfnWndProc = WndProc;
    wc.style = CS_HREDRAW | CS_VREDRAW;
    wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
    wc.hCursor = LoadCursor(NULL, IDC_ARROW);
    wc.lpszMenuName = NULL;
    wc.cbClsExtra = wc.cbWndExtra = 0;
    wc.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
 
    if (!RegisterClass(&wc)) return 0;
 
    hWnd = CreateWindow(WinName, _T("Мое первое окно"), WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, HWND_DESKTOP, NULL, This, NULL);
 
    ShowWindow(hWnd, mode);
 
    while (GetMessage(&msg, NULL, 0, 0)) {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }
 
    return 0;
}
 
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lParam) {
    switch (message) {
    case WM_DESTROY: PostQuitMessage(0);
        break;
    default:
        return DefWindowProc(hwnd, message, wparam, lParam);
    }
    return 0;
}
Я только начинаю изучать WinAPI по учебнику, и там был дан пример первой оконной программы. Но при запуске студия любезно вывела мне ошибку: "Ошибка LNK2019 ссылка на неразрешенный внешний символ main в функции "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ)". Подскажите, как я могу ее исправить. Спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.09.2022, 01:34
Ответы с готовыми решениями:

Ошибка при создании окна
Решил переделать код, создающий окно с помощью winapi, существенных изменений не сделал(убрал...

Ошибка при создании окна
При компиляции не получается создать окно,не опйму где ошибка,программа прост и подобные я уже...

Ошибка при создании окна в Windows 10
В общем, написал я программку, на windows 7 она работает прекрасно, но на windows 10 не создается...

Ошибка при создании окна сообщений
void Cprogr1Dlg::OnBnClickedButton1() { MessageBox(&quot;Привет!&quot;); } Подчеркивает &quot;Привет!&quot;, и...

Как изменить стиль окна при создании?
подскажите пожалуйста как правильно заюзать стиль окна? там вроде есть такой стиль...

2
2376 / 834 / 317
Регистрация: 10.02.2018
Сообщений: 1,968
01.09.2022, 08:08 2
SergeyNazapov Можете попробовать в настройках своего текущего проекта ручками изменить опцию линковки system/subsystem с "консоли" на "окна". Но не факт, что ещё где-то что-то ручками в настройках нужно дополнительно подстроить. Проще всего при создании нового проекта сразу указать тип нужного приложения "десктоп" или "оконное", а не "консольное" (названия не точные, зависят от установленной студии).
0
270 / 113 / 18
Регистрация: 26.12.2010
Сообщений: 468
01.09.2022, 15:43 3
SergeyNazapov, в настройках линкера поменяйте subsystem на "windows" , либо добавьте функцию main , из которой вызывайте уже _tWinMain ( но будет черное окно консоли)
0
01.09.2022, 15:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.09.2022, 15:43
Помогаю со студенческими работами здесь

Компилятор ругается при создании дочернего окна
господа создаю дочернее окно но компилятор ругается - #include &lt;windows.h&gt; /* Declare Windows...

Как исправить ошибки при создании окна
Как исправить ошибку Серьезность Код Описание Проект Файл Строка Состояние подавления...

Создать обработку сообщения при создании главного окна
подскажите как создать обработку сообщения при создании главного окна WM_CREATE, в коде #include...

Надо ли регистрировать два класса окна при создании двух окон?
Всем привет! В программе создается некоторое окно (CreateWindowEx()). Перед этим, естесственно,...

При создании окна через CreateDialog невозможно вводить данные в Edit
Я созданию окно с помощью CreateDialog на котором лежит EDIT и почему нельзя в него ввести текст с...

Как можно задать стиль окна при создании процесса функциями WinAPI?
привет всем! скажите, пожалуйста, если создавать окно, то можно указать стиль окна. а как быть с...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru