![]() |
|
|
![]()
|
|
| Competitor |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 440 Регистрация: 23.3.2005 Где: Tula Репутация: нет Всего: -1 |
Привет всем,
Хочу в MFC использовать класс из сторонней библиотеки. Есть пример ее использования, написанный на VB6.0. Выглядит это так: В референсах подключается SomeAnycli.dll В коде создается объект класса так:
И далее используется. Вот чтобы заюзать функцию в MFC я бы делал так:
Подскажите, каким образом я могу подгрузить целый класс и использовать его методы. |
||||
|
|||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 6 Всего: 118 |
а вы уверены что это не COM класс?!
это не комовые можно импортировать, а комовые можно "импортировать" (путаница)... поясняю : есть __delspec(dllimport) - истинный импорт (вот тут компилятор нагенерирует вам и прокси классов, и интерфейсов, и h файл из этого всего). а есть #import filename.ext - импорт COM библиотек. собственно вам нужен второй. гугл и msdn даст примеры как его использовать... ну и почитать про COM придется.. Это сообщение отредактировал(а) jonie - 11.6.2008, 20:38 -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
| Competitor |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 440 Регистрация: 23.3.2005 Где: Tula Репутация: нет Всего: -1 |
Хотелось бы задать вопрос по директиве #import.
В мсдн сказано, что она добывает информацию о библиотеке. Обращается ли она при этом к реестру? Т.е. могу я кинуть в папку с проектом Activex компонент, импортнуть его с помощью этой директивы (при этом сам компонент не будет зарегестрирован), и далее начать создавать инстансы нужных мне классов. |
|||
|
||||
| Competitor |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 440 Регистрация: 23.3.2005 Где: Tula Репутация: нет Всего: -1 |
Делаю импорт так:
#import "..\XReleaseP1\MFCActivexTest901.ocx" no_namespace named_guids Появляется файл tlh с определением ИДшников элементов COM. Пытаюсь получить доступ к классу так:
Однако указатель pClassFactory всегда оказывается нулевым. В чем моя ошибка? |
|||
|
||||
| Andrey44 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1501 Регистрация: 4.12.2006 Где: На работе Репутация: 12 Всего: 26 |
Competitor, Проверте что возвращает GetLastError() и по-моему не хватает вызова CoInitialize(NULL)
-------------------- ????? ??, ??????? ?????. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |