| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: COM/DCOM/ActiveX/ATL/CORBA > Проблема с использованием ActiveX DLL в с++! |
| Автор: DrBoom 19.1.2008, 13:51 | ||||||||
| НародЪ, подскажите, что я делаю не так вызывая, скажем в VBA код выглядит так:
В этоОй ActiveX есть только методы: Run() Option() Job() Quit() (параметров нет и они ниче не возращают!) ================ Вот код файла MyProj.idl в проекте с++, где пытаюсь задействовать эту DLL:
Вот код файла cpp:
Использовал пример описанный тут: http://www.realcoding.net/article/view/1836 . Однако компилятор выдает след. Error'ы:
Пожалуйста, если есть лучше способ, то подскажите, или что я сделал нитак... Добавлено через 2 минуты и 34 секунды Использую MS 2005 MVC++. |
| Автор: jonie 20.1.2008, 15:01 | ||
погляди в object inspector относительно того что после #import все появилось.... |
| Автор: DrBoom 20.1.2008, 22:44 | ||||
Весьма возможно, с с++ я мало работал, а ща, что называется, нужда заставила... Я говорю, что они не возвращают, относительно VBA, ибо это процедуры sub, а не function.... т.е. по-просту void function!!! Далее... я так и не понял, что должно появится в проекте и как, ибо этого не было... вот... что делать??? кстати, пытаясь написать в файле cpp:
он выдает мол нет члена класса такого и кучу других error'ов... Если есть другие, более понятные, более рабочие примеры, скиньте плзЪ, нужно очень задействовать эту DLL!!!!! ------------- Даже бубны не помогли=( |
| Автор: xvr 21.1.2008, 14:31 | ||||||||
|
| Автор: DrBoom 21.1.2008, 16:18 |
| xvr, это не ответ на поставленный вопрос, ибо я не отрицаю что где-то ошибился... просто мозгЪ умер, и уже не сображает, мне нужно тыкнуть, гле я и в чем сделел нетак... ибо делал как тама написано!!! И я прошу о помощи... голые слова я тож могу говорить, и я б не приводил код, как пример, если б это делал... Лучше, еще раз повторю, скажите что я нитак сделал, ибо это единственный пример нашел по использованию ActiveX DLL в с++, и эта статья фигурирует в нескольких цать сайтов... в msdn не нашел примеров, ибо на все языки есть, а на c++ так и написано, ПРИМЕРОВ НЕТ, мол разбирайтесь сами! |
| Автор: xvr 21.1.2008, 18:40 | ||||||||||
Это ответ, я написал, что у тебя не так, внимательно смотри мой пост.
Не так как написано.
Еще раз повторяю - у тебя в сорце написано:
а должно быть
|
| Автор: DrBoom 21.1.2008, 19:02 |
Извини, но я повторюсь... Когда пишу так: --------------- |
| Автор: xvr 21.1.2008, 21:10 | ||
А вот это странно, должно работать. Как именно ругается? И что содержится в файле MyProj.tlh (VS должен был его сгенерировать)? Да, еще - не PluginPtr а IPluginPtr! |
| Автор: DrBoom 21.1.2008, 21:35 |
И так пробывал, он тоже самое пишит, мол member не принадлежит (нету такого в) MyProj... Я уже не наю, что делать, более того, всесто генерации tlh генерирует, я ща не помню так, не со своего компа пишу, но точно заголовочный файл h и файл с, имя которых корявенькое, но содержит "MyProj", и при этом он не включил их в проект, я их попробывал включить, а не ... компилятор еще страшнее начал ругаться, но ошибка с членом не пропадала... я просто в не понятках был... |
| Автор: xvr 21.1.2008, 22:02 | ||
Все страньшн и страньше Приатач сюда файлы, которые были сгенерены (только предварительно упакуй их в один архив) - разберемся |
| Автор: DrBoom 21.1.2008, 22:05 |
| Без проблем, как до дому добирусь, скорее всего утром, тогда пришлю... |
| Автор: DrBoom 22.1.2008, 22:31 |
| И так... вотЪ аттач, извиняюсь, что с опозданиемЪ, ибо провайдер мой слегка меня отрубилЪ от инета... =========================== И так там следующие файлы: MyProj.idl и генерируемые им файлы... текст слегка уже отличен от примера, приведенного выше, но суть и проблема таже... делаю так же по примеру! Генерируемые файлы ни как не похожи на те, что в примере и нигде не содержат, хоть лопни и тресни, "I***Ptr" |
| Автор: xvr 22.1.2008, 23:16 | ||
Сгенерированны совершенно стандартные файлы от .idl (их делает midl, а не директива #import), и делаются они по умолчанию при трансляции *.idl файла, если он был сам по себе включен в проект VS. #import похоже совсем не сработала. Покажи файл проекта и *.cpp, где был #import |
| Автор: jonie 22.1.2008, 23:46 |
| накатал пример как это выглядит, думаю разберешься... смотри в ClassExplorer ) |
| Автор: DrBoom 23.1.2008, 12:14 |
| jonie и xvr, спасибо за помощь, проблема была решена... В общем в моем прокте почему - то вместо IPluginPtr нуно было писать _PluginPtr, почему так я не понял... Однако скомпилилось и заработало... ------------ Еще раз спасибо, хотя вопросы еще есть и будут, и я думаю вернусь суда... |