![]() |
|
![]() ![]() ![]() |
|
IIGGOORR |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 9.3.2007 Репутация: нет Всего: нет |
Извините за беспокойство. У меня такая проблема - Я создаю простое MFC приложение, мне надо загружать в нём bmp картинки и обрабатывать их. Мне нужны методы класса Image, соответственно они содержатся в библиотеках gdiplus.dll, gdiplus.lib. Когда я подключаю с помощью #include <...> заголовочные файлы из класса Image, например, Gdiplusheaders.h, gdiplus.h, то компилятор выдаёт много ошибок. Когда я пишу стандартный конструктор класса Image компилятор сообщает, что такого класса нет. Помогите пожалуйста, как подключить библиотеки класса Image?
|
|||
|
||||
_hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 5 Всего: 98 |
их не помешало бы привести...
что за класс такой? CImage в atlimage.h описан... -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
korbian |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 336 Регистрация: 20.2.2007 Где: Penza Репутация: 1 Всего: 14 |
Если я все правильно понял, то
#pragma comment( lib, "gdiplus.lib" ) или (для Visual Studio) project->properties->linker->input->additional dependencies: gdiplus.lib -------------------- korbian © |
|||
|
||||
IIGGOORR |
|
|||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 9.3.2007 Репутация: нет Всего: нет |
Спасибо за ответ. Не помогло, ошибки следующие:
Error 1 error C2653: 'Bitmap' : is not a class or namespace name Error 2 error C2065: 'pBitmap' : undeclared identifier Error 3 error C3861: 'Bitmap': identifier not found Error 4 error C2061: syntax error : identifier '{ctor}' |
|||
|
||||
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Очевидно, компилятор не находит объявлений. Т.е. не подключен соответствующий хедер. Какой, сказать не могу, т.к. GDI+ не использую, но, если не найдешь в документации, можно, на худой конец, файловым поиском найти, где это все определяется. И еще, обрати внимание на пространство имен, возможно просто некорректно его указываешь.
-------------------- ... |
|||
|
||||
IIGGOORR |
|
||||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 9.3.2007 Репутация: нет Всего: нет |
Earnest спасибо за советы.
В том то и дело, когда подключаю соответствующие хедеры, компилятор выдаёт ошибку в каждой строчке этого хедера.
А что значит некорректно указывать пространство времён и где оно вообще указывается? Благодарен за помощь. |
||||
|
|||||
Earnest |
|
||||||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Какой хедер и какие ошибки? Лучше всего, конечно, найти пример использования GDI+ (причем любого) и списать слова. Может, там какой-то порядок подключаемых хедоров нужен.
Ну например, у тебя (т.е. в стандартном хедере), есть такое объявление:
Ты подключаешь это хедер и пытаешься использовать символ YYY, на что компилятор ругается, т.к. ты должен писать XXX::YYY. Кстати, твой код:
Но, поскольку я умнее компилятора ![]()
Только нужно писать не просто Bitmap, XXX::Bitmap, где XXX - то пространство имен, где класс Bitmap объявлен. И наконец: что-то про GDI+ было на форуме. Поищи, может найдешь примеры. И книжку какую-нибудь про С++ прочитай, азы хотя бы... -------------------- ... |
||||||||||
|
|||||||||||
Greeen |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 710 Регистрация: 13.8.2006 Где: Петербург Репутация: 10 Всего: 18 |
Вот тебе листинг файлега, подключаешь его инклудом и юзай GDI+ без проблем
-------------------- Подпись больше не нужна |
|||
|
||||
IIGGOORR |
|
||||||||||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 9.3.2007 Репутация: нет Всего: нет |
Спасибо за дельные советы.
2 Earnest коструктор:
взял из MSDN.
Хедер: Gdiplusheaders.h, ошибки исчезли с подключенным файлом от Greeen'a 2 Greeen Ваш файл подключил. Первые две ошибки исчезли, а именно:
т. е., я как понимаю, библиотека всё таки подключилась ![]()
Видимо я всё-таки неправильно делаю коструктор, хотя в MSDN"е он присутствует, либо в опциях линковщика, что-то не то ставлю:
Какие опции вообще влияют на подключение библиотек? Заранее спасибо за ответы. |
||||||||||
|
|||||||||||
Greeen |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 710 Регистрация: 13.8.2006 Где: Петербург Репутация: 10 Всего: 18 |
Опции линковщика и компилятора тут не при чем. Давай приводи свой код потому, что ругается на то, что нет объявления pBitmap. Может ты просто забыл чего то. Короче код в студию.
Только что заметил. Вот этот твой код
![]()
Это сообщение отредактировал(а) Greeen - 27.4.2007, 15:07 -------------------- Подпись больше не нужна |
||||
|
|||||
IIGGOORR |
|
||||
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 9.3.2007 Репутация: нет Всего: нет |
Greeen, Earnest, Огромное спасибо за вашу помощь. Действительно мой конструктор не работал, ваш - работает, но честное слово
не я придумал, как в MSDN"е написано, так и писал.
Это сообщение отредактировал(а) IIGGOORR - 27.4.2007, 22:31 |
||||
|
|||||
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Из приведенной цитаты вовсе не следует такая запись как ты сочинил, а следует ровно то, что мы с грином написали. Я уже вроде говорили и еще раз повторю: изучай матчасть, т.е. C++. В документации предполагается, что ты знаешь, как надо вызывать конструктор. -------------------- ... |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |