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

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

Войти
Регистрация
Восстановить пароль
 
Справлюсь
23 / 23 / 5
Регистрация: 24.07.2014
Сообщений: 203
#1

Error C2664: RegisterClassW: невозможно преобразовать параметр 1 из "WNDCLASSEX *" в "const WNDCLASSW *" - C++

12.08.2014, 16:41. Просмотров 548. Ответов 6
Метки нет (Все метки)

почему выдаёт ошибку?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int RegClass(WNDPROC Proc,LPCTSTR szName,UINT brBackground){
    WNDCLASSEX wc;
    wc.style=wc.cbClsExtra=wc.cbWndExtra=0;
    wc.lpfnWndProc=Proc;
    wc.cbSize = sizeof(WNDCLASSEX);
    wc.hInstance=hInst;
    wc.hIcon=LoadIcon(NULL,IDI_APPLICATION);
    wc.hCursor=LoadCursor(NULL, IDI_ARROW);
    wc.hbrBackground=(HBRUSH)(brBackground+1);
    wc.lpszMenuName=NULL;
    wc.lpszClassName=szName;
    return(RegisterClass(&wc));
}
такую:...(79): error C2664: RegisterClassW: невозможно преобразовать параметр 1 из "WNDCLASSEX *" в "const WNDCLASSW *"
(строка 79 это стока 12)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.08.2014, 16:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Error C2664: RegisterClassW: невозможно преобразовать параметр 1 из "WNDCLASSEX *" в "const WNDCLASSW *" (C++):

Ошибка 6 error C2664: strtok: невозможно преобразовать параметр 1 из "const char *" в "char *" - C++
string s = "555 44 55 66";//размер строки заранее неизвестен char* p = strtok(s.c_str(), ' '); не нравится такое...

error C2664: strcmp: невозможно преобразовать параметр 1 из "char (*)[20]" в "const char *" - C++
for(int i = 0; i< 5; i++) { wr_struc (list); if (strcmp(&list.Sostav,osn_sostav)==0 && strcmp(&list.MestoVkomande,attack)==0...

error C2664: CWnd::MessageBoxW: невозможно преобразовать параметр 2 из "long" в "LPCTSTR" - C++
при компиляции выдаёт ошибку указанную в теме, код: void Clab_12_2Dlg::OnClickedAri() { // TODO: добавьте свой код обработчика...

Error C2664: невозможно преобразовать из "wchar_t" в "const wchar_t *" - C++
Вот так работает: wchar_t buf; Edit_GetText(hE, buf, sizeof(buf)); if(buf) { wchar_t b; _itow_s(wcscspn(buf, &buf), b, 10); ...

Невозможно преобразовать параметр 1 из "const wchar_t [12]" в "const char *" - C++
Писал программу. Дошел до наложения текстур. Пытаюсь наложить 4-й час. Много разных ошибок. Все ошибки гуглил. На данный момент ошибка...

невозможно преобразовать параметр 1 из "const char [8]" в "LPCWSTR" - C++
msoftcon.h //msoftcon.h //declarations for Lafore's console graphics functions //uses Window's console functions #ifndef...

6
ssXXss
266 / 188 / 10
Регистрация: 15.01.2011
Сообщений: 681
12.08.2014, 16:45 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
...
const WNDCLASSEX wc;
...
или
return(RegisterClass((const WNDCLASSW *)&wc));
1
ValeryS
Модератор
6651 / 5060 / 470
Регистрация: 14.02.2011
Сообщений: 16,918
12.08.2014, 16:49 #3
Цитата Сообщение от Справлюсь Посмотреть сообщение
WNDCLASSEX wc;
C
1
const WNDCLASSEX wc;
http://vsokovikov.narod.ru/New_MSDN_...isterclass.htm

Добавлено через 44 секунды
и юникоде в свойствах убери
0
Справлюсь
23 / 23 / 5
Регистрация: 24.07.2014
Сообщений: 203
12.08.2014, 17:08  [ТС] #4
спасибо

Добавлено через 15 минут
ssXXss, все равно ошибка (79): error C2664: RegisterClassW: невозможно преобразовать параметр 1 из "const WNDCLASSW *" в "const WNDCLASSW *"
0
ssXXss
266 / 188 / 10
Регистрация: 15.01.2011
Сообщений: 681
12.08.2014, 17:16 #5
C++
1
2
3
4
5
6
7
8
9
ATOM RegisterClass(      
    CONST WNDCLASS* lpWndClass
);
// а тебя 
int RegClass(WNDPROC Proc,LPCTSTR szName,UINT brBackground)
{
 ...
 return RegisterClass();
}
посмотри пример из msdn
0
castaway
Эксперт С++
4884 / 3019 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
12.08.2014, 17:21 #6
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Вообще то для структуры WNDCLASSEX существует функция RegisterClassEx, и константность тут не при чём.
1
ssXXss
266 / 188 / 10
Регистрация: 15.01.2011
Сообщений: 681
12.08.2014, 17:25 #7
C++
1
2
3
4
5
6
//*.h вроде windows.h
#ifdef UNICODE
#define WNDCLASS WNDCLASSW 
#else 
#define  WNDCLASS WNDCLASSA
#endif
где то есть такие строки как выше , поэтому можно использовать конкретную реализацию пример:
C++
1
2
3
WNDCLASSA w;
...
RegisterClassA(&w);
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.08.2014, 17:25
Привет! Вот еще темы с ответами:

Исправить ошибку C2664: fcvt: невозможно преобразовать параметр из "int" в "int *" - C++
ПИшу програму перевод дробового числа с указанием количесв цифр после точки , с инт в чар !!!!Но выбивает ошибку !!! ...

Error C2664: Client::First: невозможно преобразовать параметр 1 из "std::queue<_Ty>" в "std::queue<_Ty> &" - C++
barbershop.h: #ifndef __BARBERSHOP_H__ #define __BARBERSHOP_H__ #include &lt;vector&gt; #include &lt;queue&gt; #include &quot;wantshaircut.h&quot; ...

Error C2440: return: невозможно преобразовать "const char *" в "const char (&)[6]" - C++
Вроде все правильно а все равно не работает. Подскажите в чем ошибка #include &lt;iostream&gt; template&lt;typename T&gt; inline const T...

Ошибка при сборке многофайлового проекта: "невозможно преобразовать "int" в "const golf" - C++
Сделал многофайловую программу программу, вот она: //golf.h #include &lt;iostream&gt; #ifndef golg_h_ #define golf_h_ const int Len =...


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

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
12.08.2014, 17:25
Ответ Создать тему
Опции темы

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