Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
75 / 35 / 17
Регистрация: 24.07.2014
Сообщений: 357
1

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

12.08.2014, 16:41. Показов 1065. Ответов 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
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.08.2014, 16:41
Ответы с готовыми решениями:

Error C2664: atoi: невозможно преобразовать параметр 1 из "_TCHAR *" в "const char *" Как исправить эту ошибку в коде?
#include "stdafx.h" #define _XOPEN_SOURCE 500 #include <conio.h> #include <stdio.h>...

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

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

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

6
267 / 189 / 33
Регистрация: 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
Модератор
Эксперт по электронике
8514 / 6329 / 857
Регистрация: 14.02.2011
Сообщений: 21,978
12.08.2014, 16:49 3
Цитата Сообщение от Справлюсь Посмотреть сообщение
WNDCLASSEX wc;
C
1
const WNDCLASSEX wc;
http://vsokovikov.narod.ru/New... rclass.htm

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

Добавлено через 15 минут
ssXXss, все равно ошибка (79): error C2664: RegisterClassW: невозможно преобразовать параметр 1 из "const WNDCLASSW *" в "const WNDCLASSW *"
0
267 / 189 / 33
Регистрация: 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
Эксперт С++
4974 / 3082 / 456
Регистрация: 10.11.2010
Сообщений: 11,160
Записей в блоге: 10
12.08.2014, 17:21 6
Лучший ответ Сообщение было отмечено Справлюсь как решение

Решение

Вообще то для структуры WNDCLASSEX существует функция RegisterClassEx, и константность тут не при чём.
1
267 / 189 / 33
Регистрация: 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
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.08.2014, 17:25

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

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

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

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


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

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

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