Ошибка при создания окна Win32
| |
imperator12 | Дата: Вторник, 02 Августа 2011, 15:48 | Сообщение # 1 |
почетный гость
Сейчас нет на сайте
| Доброго времени суток. Недавно начал изучать Win32 и вот возникла проблема при создании окна.
Вот код Code #define WIN32_LEAN_AND_MEAN #include<windows.h> #include<windowsx.h> #include<stdio.h> #include<math.h>
#define WINDOW_CLASS_NAME12 "WINCLASS1"
LRESULT CALLBACK WindowProc(HWND hwnd,UINT msg,WPARAM wparam,LPARAM lparam) { PAINTSTRUCT ps; HDC hdc;
switch(msg) { case WM_CREATE: { return (0); }break; case WM_PAINT: { hdc = BeginPaint(hwnd,&ps); EndPaint(hwnd,&ps); return (0); }break; case WM_DESTROY: { PostQuitMessage(0); return (0); }break; default: break; } return (DefWindowProc(hwnd,msg,wparam,lparam)); }
int WINAPI WinMain( HINSTANCE hinstance, HINSTANCE hprevinstance, LPSTR lpcmdline, int ncmdshow) { WNDCLASSEX windclass; HWND hwnd; MSG msg;
windclass.cbSize = sizeof(WNDCLASSEX); windclass.style = CS_DBLCLKS |CS_OWNDC|CS_HREDRAW|CS_VREDRAW; windclass.lpfnWndProc = WindowProc; windclass.cbClsExtra = 0; windclass.cbWndExtra = 0; windclass.hInstance = hinstance; windclass.hCursor = LoadCursor(NULL,IDC_ARROW); windclass.hbrBackground = (HBRUSH)GetStockObject(BLACK_BRUSH); windclass.lpszMenuName = NULL; windclass.lpszClassName = WINDOW_CLASS_NAME12; windclass.hIcon = LoadIcon(NULL,IDI_APPLICATION); windclass.hIconSm = LoadIcon(NULL, IDI_APPLICATION);
if(!RegisterClassEx(&windclass)) MessageBox(NULL,"Problem1","Error1",MB_OK); return(0);
if (!(hwnd = CreateWindowEx(NULL, WINDOW_CLASS_NAME12, "Your Basic Window++", WS_BORDER | WS_VISIBLE, 0,0, 400,400, NULL, NULL, hinstance, NULL))) MessageBox(NULL,"Problem","Error",MB_OK); return(0);
while(TRUE) { if(PeekMessage(&msg,hwnd,0,0,PM_REMOVE)) { if(msg.message == WM_QUIT) break; TranslateMessage(&msg); DispatchMessage(&msg); } }
return(msg.wParam); }
Пожалуйста объясните что не так.
Сообщение отредактировал imperator12 - Вторник, 02 Августа 2011, 16:19 |
|
| |
froex | Дата: Вторник, 02 Августа 2011, 16:41 | Сообщение # 2 |
Руководитель Froexilize team
Сейчас нет на сайте
| imperator12, ты забыл написать, что за проблема возникла. Судя по названию темы, возникает какая-то ошибка. Какая?
Не превращайте форум в чат. Пишите более развернуто и понятно - всё равно вас попросят объяснить подробнее. Алгоритмы, программирование, оптимизация, тестирование, ведение проектов. Ищу художника, дизайнера, тестера, программистов С и С++ Обучаю процессам разработки и программированию.
|
|
| |
Kornival | Дата: Вторник, 02 Августа 2011, 16:49 | Сообщение # 3 |
The Witcher
Сейчас нет на сайте
| Code if(!RegisterClassEx(&windclass)) MessageBox(NULL,"Problem1","Error1",MB_OK); return(0); Поменяй на Code if(!RegisterClassEx(&windclass)) { MessageBox(NULL,"Problem1","Error1",MB_OK); return(0); } Все что должно выполняться при if(условие) должно быть заключено в фигурные скобки. То же самое при проверке значения возвращаемого CreateWindowEx То есть Code if (!(hwnd = CreateWindowEx(NULL, WINDOW_CLASS_NAME12, "Your Basic Window++", WS_BORDER | WS_VISIBLE, 0,0, 400,400, NULL, NULL, hinstance, NULL))) MessageBox(NULL,"Problem","Error",MB_OK); return(0); Нужно поменять на Code if (!(hwnd = CreateWindowEx(NULL, WINDOW_CLASS_NAME12, "Your Basic Window++", WS_BORDER | WS_VISIBLE, 0,0, 400,400, NULL, NULL, hinstance, NULL))) { MessageBox(NULL,"Problem","Error",MB_OK); return(0); }
Сообщение отредактировал Kornival - Вторник, 02 Августа 2011, 16:57 |
|
| |
imperator12 | Дата: Пятница, 05 Августа 2011, 13:43 | Сообщение # 4 |
почетный гость
Сейчас нет на сайте
| Сенк я это знаю просто сообщения добавлял в самом конце вот и забыл. Добавлено (05.08.2011, 13:43) --------------------------------------------- А еще помогите пожалуйста в этом приложении хочу добавить свою иконку все сделал но res файл не создаётся. Работаю в експресс. Читал что его можно создать самому но что в ньом делать что писать или рисовать?
Сообщение отредактировал imperator12 - Вторник, 02 Августа 2011, 18:05 |
|
| |
Flow | Дата: Пятница, 05 Августа 2011, 13:56 | Сообщение # 5 |
-=[.FSProduction.]=-
Сейчас нет на сайте
| imperator12, скачай любой редактор ресурсов (Resource Hacker, Restorator)...и поменяй иконку через него... Саму иконку, нужно рисовать в ручную...можно использовать Paint.Net, он умеет сохранять в формат .ico
|
|
| |
imperator12 | Дата: Пятница, 05 Августа 2011, 17:09 | Сообщение # 6 |
почетный гость
Сейчас нет на сайте
| я так и делал + rc файлы нарисовал но експресс не создает res файлы их можно создать самому но что в них нужно делать Добавлено (05.08.2011, 17:09) --------------------------------------------- Сейчас установил Профешинал и все работает но я не знаю триал ето или крякнута как узнать?
|
|
| |
froex | Дата: Пятница, 05 Августа 2011, 17:12 | Сообщение # 7 |
Руководитель Froexilize team
Сейчас нет на сайте
| Quote (imperator12) как узнать? Подожди 30 или 90 дней
Не превращайте форум в чат. Пишите более развернуто и понятно - всё равно вас попросят объяснить подробнее. Алгоритмы, программирование, оптимизация, тестирование, ведение проектов. Ищу художника, дизайнера, тестера, программистов С и С++ Обучаю процессам разработки и программированию.
|
|
| |
imperator12 | Дата: Пятница, 05 Августа 2011, 17:15 | Сообщение # 8 |
почетный гость
Сейчас нет на сайте
| А куда вводить ключ и не скока стоит лц? И можно удалять устанавливать)?
Сообщение отредактировал imperator12 - Пятница, 05 Августа 2011, 17:16 |
|
| |
ilya7834 | Дата: Пятница, 05 Августа 2011, 19:23 | Сообщение # 9 |
Работаю на Irrlicht Engine
Сейчас нет на сайте
| твоя мой не понимай. С визуал стьюдио не сталкивался, но уроков по установке в инете полно.
На синем небе Попробуй-ка разглядеть Синюю звезду
|
|
| |
froex | Дата: Пятница, 05 Августа 2011, 20:54 | Сообщение # 10 |
Руководитель Froexilize team
Сейчас нет на сайте
| imperator12, на минутку стань программистом. Работает? Не трогай!
Не превращайте форум в чат. Пишите более развернуто и понятно - всё равно вас попросят объяснить подробнее. Алгоритмы, программирование, оптимизация, тестирование, ведение проектов. Ищу художника, дизайнера, тестера, программистов С и С++ Обучаю процессам разработки и программированию.
|
|
| |
Stas96 | Дата: Пятница, 05 Августа 2011, 21:43 | Сообщение # 11 |
Programmer and Game Designer
Сейчас нет на сайте
| imperator12, Если VisualStudio 2010 то срок действия лицензии 90 дней(за другие версии сказать не могу,стоит только эта)
|
|
| |
imperator12 | Дата: Понедельник, 08 Августа 2011, 17:34 | Сообщение # 12 |
почетный гость
Сейчас нет на сайте
| А я могу когда кончится срок удалить и заново установить?
Добавлено (07.08.2011, 17:39) ---------------------------------------------Добавлено (08.08.2011, 17:34) --------------------------------------------- Все у всьому разобрался
Сообщение отредактировал imperator12 - Воскресенье, 07 Августа 2011, 17:41 |
|
| |
Kirchik | Дата: Вторник, 09 Августа 2011, 03:37 | Сообщение # 13 |
был не раз
Сейчас нет на сайте
| найди лучше бесплатную альтернативу
|
|
| |
imperator12 | Дата: Вторник, 09 Августа 2011, 12:57 | Сообщение # 14 |
почетный гость
Сейчас нет на сайте
| Quote (Kirchik) найди лучше бесплатную альтернативу
Так я и разобрался с експресс
|
|
| |
|