Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.11.2015, 22:07   #1
Ganster89
 
Регистрация: 16.10.2015
Сообщений: 8
По умолчанию WinApi. Подскажите что за ошибка?

Всем привет может кто подсказать что это за ошибка!
Я вообще новичок в WinApi и начинающий Си Си++ ! Вот начал по книжке переписывать и код и ошибка автор книги(Ганеев).
Код:
#include "stdafx.h"
#include "Win32Project1.h"

typedef struct
{
UINT style;
WNDPROC ipfnWndProc;
int cbClsExtra;
int cbWndExtra;
HANDLE hInstance;
HICON hicon;
HCURSOR hCursor;
HBRUSH hbrBackground;
LPCTSTR ipszMenuName;
LPCTSTR ipszClassName;

}WNDCLASS;

WNDCLASS wc;

int RegClass(WNDPROC Proc, LPCTSTR szName)
{
WNDCLASS wc;
wc.style=CS_HREDRAW|CS_VREDRAW;
wc.cbClsExtra=wc.cbWndExtra=0;
wc.ipfnWndProc=Proc; wc.hInstance=wc.hInstance;
wc.hicon=LoadIcon(NULL, IDI_APPLICATION);
wc.hCursor=LoadCursor(NULL,IDC_ARROW);
wc.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);
wc.ipszMenuName=(LPCTSTR)NULL;
wc.ipszClassName=szName;
return RegisterClass(&wc); здесь ошибку показывает подчёркнут знак амперсанда 

}
Цитата:
Ошибка
1 IntelliSense: аргумент типа "WNDCLASS *" несовместим с параметром типа "const WNDCLASSW *"

Последний раз редактировалось Stilet; 10.11.2015 в 08:01.
Ganster89 вне форума Ответить с цитированием
Старый 09.11.2015, 22:17   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
здесь ошибку показывает
И как всегда текст ошибки находится в викиликс. Ща погодь, открою его, гляну, а то сложно к космосу подключаться в такую погоду
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.11.2015, 22:36   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А если параметр типа WNDCLASSW тоже ошибку дает?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 09.11.2015, 23:18   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

Вот потому что не надо так делать, тем более только новичок. Ошибка простая - у вас включен юникод и соответственно RegisterClass требует юникодовский вариант.
Для вас же уже все определили и через макросы, дефайны сделали правильный выбор. Подключайте виндовый заголовочный файл и выбрасывайте свое переопределение стандартного типа.
p51x вне форума Ответить с цитированием
Старый 10.11.2015, 00:32   #5
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

не надо системную структуру описывать, сомневаюсь что автор их в одном блоке разместил.

ошибка в том что у ТС, описана своя структура зачем-то.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 16.11.2015, 18:18   #6
Ganster89
 
Регистрация: 16.10.2015
Сообщений: 8
По умолчанию

Всем спасибо за ответы, с этим разобрался )
Ganster89 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что надо знать для изучения WinApi Sylar9 Win Api 5 15.03.2012 12:03
Что такое WinApi? Farhod Общие вопросы .NET 4 19.04.2010 17:24
Ошибка! Подскажите что не так? stear Общие вопросы C/C++ 7 10.12.2009 16:12
Подскажите со скроллом в C++ WinAPI CheckPoint Помощь студентам 0 12.08.2009 14:33
Подскажите что за ошибка? dolphin705 Общие вопросы Delphi 3 03.07.2009 21:40