Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Бендерродригез
Сгибальщик
42 / 42 / 3
Регистрация: 18.05.2013
Сообщений: 220
Завершенные тесты: 1
#1

RegisterClassEx возвращает 0 - C++

26.07.2014, 13:53. Просмотров 271. Ответов 1
Метки нет (Все метки)

Здоровеньки булы.
Не могу зарегистрировать класс окна. RegisterClassEx возвращает 0, GetLasterror даёт результат 87 (Параметр задан неверно).
Никак не пойму, что именно заданно не так.
Unicode отключён, все функции версии A.
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
class Window {
        HINSTANCE Hinstance;
        LPCTSTR ClassName;
        ATOM ClassType;
        HWND Hwnd;
        static LRESULT CALLBACK WindProc(HWND Hwnd, UINT Msg, WPARAM WParam, LPARAM LParam) {
            return DefWindowProc(Hwnd, Msg, WParam, LParam);
        };
    public:
        Window(HINSTANCE Hinst, LPCTSTR Name, WindowStyle WStyle = WindowStyle());
        void Run();
    };
 
    Window::Window(HINSTANCE Hinst, LPCTSTR Name, WindowStyle WStyle)
        : Hinstance(Hinst), ClassName(Name), ClassType(0) {
        WNDCLASSEX WC;
        WC.cbSize = sizeof(WNDCLASSEX);
        WC.style = CS_HREDRAW | CS_VREDRAW;
        WC.lpfnWndProc = Window::WindProc;
        WC.cbClsExtra = 0;
        WC.cbWndExtra = 0;
        WC.hInstance = Hinst;
        WC.hIconSm = LoadIcon(nullptr, IDI_APPLICATION);
        WC.hCursor = LoadCursor(nullptr, IDC_ARROW);
        WC.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
        WC.lpszMenuName = nullptr;
        WC.lpszClassName = Name;
        WC.hIconSm = LoadIcon(NULL, IDI_APPLICATION);
        ClassType = RegisterClassEx(&WC);
        Hwnd = CreateWindow(Name, 0, WStyle.GetStyle(), 0, 0, 0, 0, nullptr, nullptr, Hinstance, 0);
    }
 
    void Window::Run() {
        ShowWindow(Hwnd, SW_SHOWNORMAL);
        MSG msg;
        while(GetMessage(&msg, NULL, 0, 0)) {
            TranslateMessage(&msg);
            DispatchMessage(&msg);
        }
    }
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.07.2014, 13:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос RegisterClassEx возвращает 0 (C++):

Не возвращает значение - C++
Здравствуйте! Помогите люди добрые?) Вообщем, нужно написать на Visual C++ библиотеку? а после запустить ее на Лабвью Код есть...

exp(x) возвращает 0 - C++
Мне необходимо написать функцию которая возвращает значение функции распределения скоростей Максвелла(вероятность того, что молекула...

Не возвращает из класса - C++
class Arrays{ public: int LIMIT; Arrays(int n1){ LIMIT=n1; int arr; for(int i=0;i<LIMIT;i++){ arr=0; } }

Деление возвращает 0 (codeblocks) - C++
double result = 1; result = 1/5; cout << result; --- Вывод: 0. Почему? Перезапускал кодблокс. Ребилдил проект... Что я не так...

in_avail() всегда возвращает 0. - C++
#include <c++/4.4/iostream> #include <c++/4.4/streambuf> int main() { int i,k; i=k=0; std::cout<<"Enter two...

this возвращает неправильное значение - C++
#include <iostream> #include <string> using namespace std; class oops{ public: oops():key(10){} int key; oops& oper1(int...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
23554 / 15548 / 4594
Регистрация: 22.10.2011
Сообщений: 27,572
Записей в блоге: 5
26.07.2014, 14:29 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
hIconSm инициализируется дважды, а hIcon - ни разу.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.07.2014, 14:29
Привет! Вот еще темы с ответами:

Что возвращает операто NEW - C++
Что возвращает операто NEW ? если не достаточно памяти ??? по ходу НОЛЬ,,,,,,???

Функция get() не возвращает значение - C++
Есть класс, в котором определен объект типа SDL_Surface*. Пытаюсь передать его в сторонний класс с помощью метода getScreen(), но он по...

Что возвращает length? - C++
Что возвращает s.length(), если std::string s; хранит UTF8? Длину в байтах, или в символах?

BASS_Init возвращает FALSE - C++
проблема следующая: BASS_Init(-1, 44100, 0, 0, NULL); возвращает FALSE, хотя BASS_ErrorGetCode() выдает 0. подскажите куда копать? вроде...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru